python thread等待所有线程结束
时间: 2023-09-08 11:08:28 浏览: 256
Python多线程:主线程等待所有子线程结束代码
5星 · 资源好评率100%
在 Python 中,可以使用 threading 模块来创建线程。要等待所有线程结束,可以使用 threading.Thread 对象的 join() 方法。
具体来说,可以先创建一个线程列表,然后遍历这个列表,对每个线程调用 join() 方法,以等待这个线程结束。示例代码如下:
```
import threading
# 定义线程函数
def worker():
# 线程执行的代码
...
# 创建线程列表
threads = []
for i in range(10):
t = threading.Thread(target=worker)
threads.append(t)
# 启动所有线程
for t in threads:
t.start()
# 等待所有线程结束
for t in threads:
t.join()
print("所有线程已结束")
```
在上面的代码中,首先创建了一个线程列表 threads,然后循环创建 10 个线程,并将它们添加到线程列表中。接着,启动所有线程,再循环等待所有线程结束,最后输出一条提示信息。
注意,在使用 join() 方法等待线程结束时,需要保证线程都已经启动。否则,当前线程会一直阻塞,直到等待的线程开始执行并结束。
阅读全文