在c 中主線程如何乾掉另乙個執行緒?

時間 2021-05-30 19:28:25

1樓:Edward Tan

多執行緒之間的通訊可以用發訊息的方式來完成通訊。 我們可以這樣設計, 不同執行緒都是乙個個runloop, 他們共享乙個message queue。 我們會將發動的訊息乙個個裝到這個queue裡面。

比如取消中斷某個執行緒的runloop, 執行緒在每次迴圈後去檢查這個mq, 然後來根據裡面的訊號完成操作。 這樣就不會被阻塞。 基本上qt cocoa android .

net這些主流的UI框架都是基於這個原理來完成多執行緒通訊的。 這個機制還可以發訊息讓不同的執行緒來完成函式呼叫過程。 也就是invoke。。

2樓:

阻塞式執行緒最好有機制定期檢查cancel標記,比如乙個std::atomic

在C#中,一般是用 CancellationToken

3樓:sin1080

std::thread只支援合作式,不能interrupt也不能kill。

另外按照你說的應用場景,kill被阻塞的執行緒是沒必要的,讓它阻塞結束之後主動退出是更合適的方法。

在react中,當乙個元件依賴另乙個元件的寬度或者高度,來設定它的寬度 左右偏移量,該或者做?

張振衣 我之前的解決方案是寫乙個 Ruler 類,它在使用者不能意識到的地方進行渲染 可以是 visibility hidden,或者 z index,或者放在螢幕外 然後把 width 寫到 redux 裡面。第二個點在於,這個過程必須經過真實渲染,是無法避開的。至於那個不需要的切換效果,是可以避...

如果說存在多元宇宙,那麼在另乙個宇宙中我們人類現階段的科學理論都還成立嗎?

魏之佳 多元宇宙的科學理論是否成立?標準答案是不一定。這個不一定不是不確定的意思。是有的一致,所以成立。有的相似相對成立。有的不成立或者說對立。所謂多元宇宙應該是指宇宙存在多種多樣的存在方式。基於存在方式的不同理論上就存在異同。目前能夠猜測到的宇宙應該有四種 超光速 以太 宇宙 坍縮宇宙 黑洞 平行...

異地戀中遇到另乙個更喜歡的人該如何選擇?

參照樓上,我說話可能有點耿直了,但是絕無惡意,其實大多數話都只是對事不對人,你還是要自己好好想想。我只說我看過的一句話,當你發現你遇到了乙個更喜歡 更好的人的時候,你說你要追逐真正的愛情,遵從自己的內心,但是你想過沒有,可能另一半早已遇見過更好的人但是他 她選擇了忠於你們的愛情。很多都只是詭辯的藉口...