温馨提示×

python守护线程怎么关闭

小亿
149
2023-08-11 01:18:30
栏目: 编程语言

要关闭Python守护线程,可以使用threading模块提供的Thread类的daemon属性。守护线程会在主线程退出时自动退出。

下面是一个示例代码,展示了如何创建守护线程并关闭它:

import threading
import time
def my_daemon_thread():
while True:
print("Daemon thread is running")
time.sleep(1)
# 创建守护线程
daemon_thread = threading.Thread(target=my_daemon_thread)
daemon_thread.daemon = True  # 设置为守护线程
daemon_thread.start()
# 主线程继续执行
time.sleep(5)
# 手动关闭守护线程
print("Closing daemon thread")
# 设置守护线程标记为False
daemon_thread.daemon = False
# 等待守护线程结束
daemon_thread.join()
print("Daemon thread is closed")

在示例中,my_daemon_thread函数是一个简单的守护线程函数,它会每秒打印一次消息。daemon_thread是一个Thread对象,通过将daemon属性设置为True,将其设置为守护线程。

主线程会休眠5秒,然后通过将daemon属性设置为False和调用join方法来手动关闭守护线程。

0