安全退出 | Safe Quit
关于如何让程序中创建的执行死循环的 QThread 线程全部安全退出,我测试了许多方法,最终敲定的是这一款: 运行标志符退出法。
也就是设置一个 keepRunning
变量为 True
,当程序退出时将其设置为 False
,死循环写作 while keepRunning is True:
的形式。
现在,尝试关闭程序主窗口时,程序窗口会首先销毁,给用户以程序已经退出的假象;几个死循环线程将在循环下次回复到开始时退出循环体,从而让线程自行结束。
当然,我们仍然需要调用线程的 quit
方法并且 wait
一下,从而确保最大可能的安全性——不过跟等待一个60秒循环一次的线程来比,这都是小case了()
Last modified: 29 八月 2024