C++ Boost线程取消

C++ Boost线程取消,c++,boost-thread,C++,Boost Thread,可以像取消pthread一样取消Boost线程吗 我正在编写一个简单的看门狗,用于在工作线程崩溃时终止它们,并且在Boost线程库中似乎没有简单地取消线程的方法。它们不支持取消,这是一件好事,因为它可能会导致各种微妙的问题 看看文档中有关线程中断和boost::thread_中断异常的部分,并设计一些可以让您在完成所需任务的同时清理问题的方式。它们不支持取消开箱即用(正如Duck所指出的),但是,根据工作线程中的处理过程,我会考虑使用 Boo::条件< /COD>通知线程,它应该在最早的机会完成

可以像取消pthread一样取消Boost线程吗


我正在编写一个简单的看门狗,用于在工作线程崩溃时终止它们,并且在Boost线程库中似乎没有简单地取消线程的方法。

它们不支持取消,这是一件好事,因为它可能会导致各种微妙的问题


看看文档中有关线程中断和boost::thread_中断异常的部分,并设计一些可以让您在完成所需任务的同时清理问题的方式。

它们不支持取消开箱即用(正如Duck所指出的),但是,根据工作线程中的处理过程,我会考虑使用<代码> Boo::条件< /COD>通知线程,它应该在最早的机会完成(干净)。这是我试图避免的事情之一。当我放弃可移植性时,我开始认为最好使用pthread清理处理程序,或者在循环中的某个地方放置一个中断点。这不会对性能造成太大影响,特别是当线程已经长时间运行时。其余的中断基础设施已经到位。