我不需要正确地终止线程,或者使其响应“终止”命令。我有兴趣使用纯C ++ 11强制终止线程。
发布于 2018-04-17 19:50:37
std::terminate()
从任何线程调用,而你所指的线程将强制结束。~thread()
在目标线程的对象上执行,不需要中介,join()
也不需要detach()
在该对象上执行。这将与选项1具有相同的效果。在C ++ 11(我知道)中没有可移植的方式来非协作地杀死多线程程序中的单个线程:
A std::thread
可能有这个成员函数:
native_handle_type native_handle();
发布于 2018-04-17 20:50:48
如果它被读得太快,它可能会被误解,因为std::terminate()
(整个过程)恰好与@AlexanderVX想到的(1个线程)的“终止”名称相同。
总结:“终止1线程+强制(目标线程不合作)+纯C ++ 11 =不行。”
https://stackoverflow.com/questions/-100003906
复制相似问题