小编典典

主程序结束时如何终止线程?

python

如果我在无限循环中有一个线程,有没有办法在主程序结束时(例如,当我按**Ctrl** +时**C** )终止它?


阅读 168

收藏
2020-12-20

共1个答案

小编典典

检查这个问题。正确答案对如何以正确的方式终止线程有很好的解释:
是否有任何方法可以杀死Python中的线程?

要使线程在键盘中断信号(ctrl + c)上停止,您可以在退出之前捕获异常“ KeyboardInterrupt”并进行清除。像这样:

try:
    start_thread()  
except (KeyboardInterrupt, SystemExit):
    cleanup_stop_thread()
    sys.exit()

这样,您可以控制程序突然终止时的处理方式。

您还可以使用内置的信号模块,该模块允许您设置信号处理程序(在您的特定情况下为SIGINT信号):http
:
//docs.python.org/library/signal.html

2020-12-20