|
发表于 2025-3-1 13:28:46
|
显示全部楼层
在程序停止时终止所有线程,使用守护线程(Daemon Thread)是一个有效的方法。守护线程会在主程序退出时自动结束。你已经提到了一种实现方法,下面是一个更详细的说明和示例:
使用守护线程的步骤
步骤 1: 在创建线程时,将 daemon 参数设置为 True。这样,这个线程就会成为一个守护线程。
步骤 2: 主线程中退出后,所有未完成的守护线程都会自动终止。
以下是你提供的代码的封装示例:
- import threading
- class Thread(threading.Thread):
- def __init__(self, target, args=(), kwargs=None):
- super().__init__(target=target, args=args, kwargs=kwargs, daemon=True)
- # 示例线程函数
- def threadFunc(a, b, c):
- while True:
- print("Running thread with:", a, b, c)
- # 使用自定义的 Thread 类
- t = Thread(target=threadFunc, args=(1, 1, 4))
- t.start()
- # 主线程的其他工作...
- print("Main thread is running")
- # 主线程结束后,守护线程也会自动终止
复制代码
通过这种方式,可以轻松地在程序退出时自动终止所有线程。如果你有任何其他问题,请随时问我!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|