一、线程的特点
主进程会等待所有子进程执行结束后再结束。
1、将子线程设置守护主线程:
子线程对象 = threading.Thread(target=任务, daemon = True)
子线程对象.setDaemon(True)
二、示例
要求:主线程睡一秒后退出程序
代码1:不设置守护主线程则报错,因为任务是死循环。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
from threading import * from time import * def task(): while True: print("任务执行中......") if __name__ == "__main__": t = Thread(target=task) t.start() # 主线程 sleep(1) print("over")
执行结果:报错
代码2:将子线程设置为守护主线程
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
from threading import * from time import * def task(): while True: print("任务执行中......") if __name__ == "__main__": t = Thread(target=task, daemon=True) t.start() # 主线程 sleep(1) print("over")
执行结果: