我试图获得对主执行的boost :: thread的引用,以便我可以中断它。 但是,boost :: thread似乎没有提供任何方法。
我在互联网上搜索过,但似乎无法找到这个问题的答案
我确实看到了一些旧的答案,但它们似乎与旧的增强代码相关
最接近的人说使用boost::thread t;
(默认构造函数)会给我一个当前线程的引用。但是,boost文档似乎表示会创建对 not-a-thread 的引用。
我的主要目标是中断主线程,而不是获取对当前boost :: thread的引用,但这似乎是最简单的方法。
我目前的解决方案是从main创建一个新线程,然后加入()它。有没有办法获取当前线程对象(或中断它)而不使用此解决方法?
由于
答案 0 :(得分:1)
用于(在v1.34及更早版本中)的默认构造boost::thread
对象引用当前线程,但它不再这样做。
你不能在boost中断主线程。您开始一个新线程来完成工作并从main()
加入它的解决方法是最好的方法。