守护线程实例
时间: 2023-07-12 17:14:12 浏览: 101
Java线程之守护线程(Daemon)用法实例
5星 · 资源好评率100%
守护线程(daemon thread)是一种特殊类型的线程,它的存在不会阻止程序的终止。当所有的非守护线程都结束时,程序会自动结束并关闭所有的守护线程。守护线程通常用来执行一些后台任务,如日志记录、定时任务等。
下面是一个守护线程的示例:
```python
import threading
import time
def daemon():
while True:
print("Daemon is running")
time.sleep(1)
d = threading.Thread(target=daemon)
d.setDaemon(True)
d.start()
print("Main thread ends")
```
在这个示例中,我们创建了一个名为 `daemon` 的函数作为守护线程的执行体。它会无限循环打印一条信息并暂停一秒钟。然后我们创建了一个线程对象 `d` 并将它设置为守护线程。最后我们启动线程并打印一条信息。
注意,因为守护线程会在非守护线程结束时自动关闭,所以我们在主线程结束时不需要调用 `d.join()` 来等待守护线程执行完成。在这个示例中,当主线程结束时,守护线程也会立即结束。
阅读全文