根据文档:https://docs.python.org/3/library/threading.html
可以将线程标记为“守护进程线程”。此标志的意义在于,当只剩下守护进程线程时,整个Python程序就会退出。初始值是从创建线程继承的。可以通过守护进程属性或守护进程构造函数参数设置标志。
样本代码:
thread = threading.Thread(target=MultiHandler().network, args=(conn, data), daemon=True)
thread.start()引用许多其他StackOverflow答案,我不清楚当主线程调用sys.exit()时,守护进程线程是否被迫关闭。
发布于 2019-02-01 08:58:01
提到zwer发表的评论,
当一个程序退出时,它的所有子线程都会被杀死。不是守护进程的线程将阻止程序退出,从而阻止它们自己的破坏。-祖尔
简而言之,yes守护进程线程不会阻止程序退出,因此它们将在退出时被杀死。
https://stackoverflow.com/questions/54475760
复制相似问题