Python 等待线程
线程类中的join()方法阻塞调用线程,直到调用join()方法的线程终止。终止可以是正常的,也可以是因为未处理的异常,或者直到可选的超时发生。它可以被多次调用。如果尝试加入当前线程,join()会引发RuntimeError异常。在线程启动之前尝试join()也会引发相同的异常。
语法
thread.join(timeout)
参数
- timeout − 它应该是一个浮点数,指定线程被阻塞的超时时间。
join()方法总是返回None。在调用join()后,必须调用is_alive()以决定是否发生了超时 – 如果线程仍然存活,则join()调用超时。当timeout参数不存在或为None时,操作将阻塞,直到线程终止。
一个线程可以被多次加入。
示例
thread1.start()
thread2.start()
thread1.join()
thread2.join()
is_alive()方法
该方法返回线程是否存活。在调用run()方法之前及在run()方法终止之后返回True。