在主线程中创建一个子线程:
t = threading.Thread()
t.join()
t.start()
那创建的这个子线程start之后,主线程会停在那里等这个子线程运行完成,这个子线程运行完成后,主线程才会继续执行t.start()之后的主线程代码。
t = threading.Thread()
t.setDaemon(True)
t.start()
那创建 的这个子线程start之后,主线程会继续往下执行,主线程执行完之后,整个程序都退出,子线程不管是否执行完都会被强制中止。
t = threading.Thread()
t.setDaemon(False)
t.start()
那创建的这个子线程start之后,主线程会继续往下执行,主线程执行完之后,整个程序不会退出,一直等待所有子线程执行完之后,整个程序才会退出。
t = threading.Thread()
t.start()
同上面t.setDaemon(False)。即子线程创建后,默认setDaemon是False。