杀死未加入的std :: thread

时间:2015-07-03 19:03:03

标签: c++ windows visual-c++

所以我有一个使用.join()运行的线程但我在运行线程时需要一个交互式用户界面,因此我停止使用join,因为它在运行时暂停了程序。 ui有一个停止按钮来杀死线程,现在我需要一种方法来停止线程而不会杀死整个程序,因为我不能使用.detach()。谢谢!

1 个答案:

答案 0 :(得分:1)

单方面终止线程没有安全的方法。相反,线程的代码必须定期检查GUI线程是否已请求退出。

我不熟悉新的C ++库函数,但我相信您可以使用atomic_bool执行此操作,例如see this question