python - 主线程退出后如何让守护线程保持事件状态?

标签 python multithreading python-2.7

我正在开发一个 Python 应用程序,其中主线程创建一个特定类的对象,例如 x

然后它启动一个线程,该线程开始执行该对象x的方法之一。该方法有一个 while True: 循环,因此它是无限的。

然后它启动另一个线程,该线程在同一对象x的另一个方法中开始执行。此方法还有一个 while True: 无限循环。

我通过调用t1.setDaemon(True)将两个线程设置为守护进程,但一旦主线程退出,它们似乎都会停止执行。

父线程结束后如何让子线程保持事件状态? 或者我应该更改我的设计以使用 cron 作业或进程分支?

最佳答案

文档说

A thread can be flagged as a "daemon thread". The significance of this flag is that the entire Python program exits when only daemon threads are left. The initial value is inherited from the creating thread. The flag can be set through the daemon property.

如果你想让你的程序保持运行,你必须至少有一个非守护线程。

关于python - 主线程退出后如何让守护线程保持事件状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37062073/

相关文章:

python - form.is_valid() 为 false 时如何访问数据

java - 从 Java 内部 throttle CPU

android - 多传感器Android日志记录

Python 用另一个字符串替换字符串(大写或小写)

mysql - 使用 python 更新 mysql

python matplotlib 用元组(x,y,值)制作热图

python - Django Rest Framework 在 ListAPIView 上使用 DjangoModelPermissions

c# - 无论如何在 UI 线程上调用 Task.Factory.StartNew

python-2.7 - flask 登录可重复使用的 cookies

python - 在python中检测程序