看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《tata111 (aa)》之銘言: : 看了這篇還是不太懂實際上要怎麼做 : 原始例子,沒有使用thread需等一個動作執行完才能執行下一個 : 兩個button各會print 1到10000 : 希望可以按下A後馬上按B,然後看見A和B的訊息交錯出現 : http://codepad.org/ud00zmZu : http://codepad.org/aDutgyMF : http://codepad.org/VqfeRUi1 : 目前的想法 : http://codepad.org/Q1iIhufB (同下面等號後的文字) : 希望可以有人給建議,對Qt還沒有很熟 : 有時候程式有錯誤時會搞不清楚到底是這樣不可行 : 還是只是自己沒寫好 : 所以想先請教一下整體的概念 : 謝謝 https://gist.github.com/1038309 像這種很明確有一個 task 要做的 thread 用 QRunnable 會比較輕鬆 好處是同樣一個 QRunnable 實體可以被 QThreadPool 執行多次 但 QThread 跑到底就不能再拿來開另一條 thread 了, 必須要 再另外建一個 QThread 實體 簡單的說, QThread 適合拿來跑 daemon QRunnable 適合拿來跑 task QtConcurrent 則多數是用來平行運算(map-reduce) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 175.96.118.147
legnaleurc:更正一下, QThread 主要的應用場合是強制讓某個 06/22 01:04
legnaleurc:QObject 跑在另一條 thread 上 06/22 01:04