我该如何终止QThread

use*_*938 17 qt qthread

最近,我遇到了这个问题,正如我在本标题中所记得的那样.我已经尝试过使用QThread :: terminate(),但我无法阻止线程,这是一个死循环(让我们说,while(1)).

非常感谢.

rpg*_*rpg 12

终止线程是停止异步操作的简单解决方案,但通常是一个坏主意:线程可能正在进行系统调用,或者在终止时可能正在更新数据结构,这可能会导致程序失效甚至操作系统处于不稳定状态.

尝试将while(1)转换为while(isAlive())并使isAlive()在您希望线程退出时返回false.


Mar*_*ius 0

您是否尝试过退出退出