Python - 加入线程


线程类中的 join() 方法会阻塞调用线程,直到调用 join() 方法的线程终止。终止可能是由于未处理的异常而正常终止,或者直到发生可选超时为止。它可以被调用很多次。如果尝试加入当前线程,join() 会引发 RuntimeError。在线程启动之前尝试 join() 也会引发相同的异常。

句法

thread.join(timeout)

参数

  • timeout - 它应该是一个浮点数,指定线程被阻塞的超时时间。

join() 方法始终返回 None。您必须在 join() 之后调用 is_alive() 来确定是否发生超时 - 如果线程仍然存在,则 join() 调用超时。当超时参数不存在或为 None 时,操作将阻塞,直到线程终止。

一个线程可以被连接多次。

例子

thread1.start()
thread2.start()
thread1.join()
thread2.join()

is_alive() 方法

该方法返回线程是否存活。它在调用 run() 方法之前和 run() 方法终止之后返回 True。