让Python多线程响应Ctrl+C
前言
Python的threading
模块,没有提供线程退出的方法。
如果程序多线程是死循环,即使CTRL+C也没有任何效果。
响应方法
1 | for t in thread_list: |
补充
setDaemon(True)
:,是把子线程设置为守护线程,主线程和子线程会同时运行,主线程结束运行后,无论子线程运行与否,都会和主线程一起结束。
所以我们结束空循环的时候,子线程也会退出。
join()
:join函数会使得主调线程阻塞,直到被调用线程运行结束或超时,才执行主线程。
只需要设置守护线程,挂一个空循环就好了
End.
- 标题: 让Python多线程响应Ctrl+C
- 作者: Lkeme
- 创建于 : 2018-09-23 20:31:51
- 更新于 : 2024-05-15 18:51:35
- 链接: https://mudew.com/2018/09/23/让Python多线程响应Ctrl-C/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论