join有一个timeout参数:(引荐进修:Python视频教程)
当设置保卫线程时,寄义是主线程关于子线程守候timeout的时候将会杀死该子线程,末了退出顺序。所以说,如果有10个子线程,悉数的守候时候就是每一个timeout的累加和。简朴的来讲,就是给每一个子线程一个timeout的时候,让他去实行,时候一到,不论使命有无完成,直接杀死。
没有设置保卫线程时,主线程将会守候timeout的累加和如许的一段时候,时候一到,主线程完毕,然则并没有杀死子线程,子线程依旧能够继承实行,直到子线程悉数完毕,顺序退出。
join的作用
import threading import time def run(): time.sleep(2) print('当前线程的名字是: ', threading.current_thread().name) time.sleep(2) if __name__ == '__main__': start_time = time.time() print('这是主线程:', threading.current_thread().name) thread_list = [] for i in range(5): t = threading.Thread(target=run) thread_list.append(t) for t in thread_list: t.setDaemon(True) t.start() for t in thread_list: t.join() print('主线程完毕了!' , threading.current_thread().name) print('一共用时:', time.time()-start_time)
更多Python相干技术文章,请接见Python教程栏目举行进修!
以上就是python的线程join怎样用的细致内容,更多请关注ki4网别的相干文章!