thread的join
时间: 2023-07-21 13:30:34 浏览: 77
关于C#中Thread.Join()的一点理解
join() 是 Thread 类的一个方法,它的作用是等待线程执行结束。当一个线程调用了 join() 方法时,调用线程会阻塞,直到被调用线程执行结束或者超时。
使用 join() 方法可以保证多个线程的执行顺序,也可以保证主线程在子线程执行结束后再结束。可以使用 join() 方法的返回值来判断线程是否已经执行结束。
示例代码:
```
import threading
def worker():
print("Worker start")
# 模拟一个长时间的计算任务
sum = 0
for i in range(1000000):
sum += i
print("Worker finish")
t = threading.Thread(target=worker)
t.start()
t.join()
print("Main thread finish")
```
在这个例子中,主线程会等待 t 线程执行结束后再结束。如果不调用 t.join() 方法,主线程会直接结束,不会等待子线程的执行。
阅读全文