簡體   English   中英

獲取對當前boost :: thread /中斷主線程的引用

[英]Getting a reference to the current boost::thread/interrupting the main thread

我試圖獲取對執行的主要boost :: thread的引用,以便可以中斷它。 但是,boost :: thread似乎沒有提供任何方式。

我在互聯網上進行了搜索,但似乎找不到該問題的答案。
我確實看到了一些舊答案,但是它們似乎與舊的Boost代碼有關。
最接近的一個表示使用boost::thread t; (默認構造函數)將為我提供對當前線程的引用。 但是,boost文檔似乎說這將創建對非線程的引用。

我的主要目標是中斷主線程,而不是獲取當前的boost :: thread的引用,但這似乎是最簡單的方法。

我當前的解決方案是從main創建一個新線程,然后將其join()。 有什么方法可以獲取當前線程對象(或中斷它),而不使用此替代方法?

謝謝

一個默認構造的boost::thread對象用於(在v1.34及更早版本中)引用當前線程,但是不再引用當前線程。

您不能在boost中中斷主線程。 最好的方法是啟動一個新線程來完成工作,然后從main()加入它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM