我撰寫了一個多批次處理程式 ,使用四個執行緒,處理第一批次的時候運行20S結束,CPU利用率90%左右,從第二批次到以后的批次基本上都是40S,CPU利用率50%左右,而且運行結果一樣,這可能是什么原因導致的?
uj5u.com熱心網友回復:
有時高有時低很正常
執行緒是否會被喚醒 受作業系統控制
uj5u.com熱心網友回復:
哦,謝了。有沒有什么方法能夠提高CPU的利用率,而且基本上就是處理第一批次的時候快,后面批次處理時間和CPU的利用率都很穩定,使用多執行緒就是希望能夠提高演算法的效率。uj5u.com熱心網友回復:
提高執行緒的優先級,同時設定你的執行緒數為CPU內核的2倍左右來提高性能uj5u.com熱心網友回復:
CPU為雙核支持四執行緒,我采用的就是四個執行緒,并且所有執行緒的優先級設定為最高,仍然是這種效果uj5u.com熱心網友回復:
提高你執行緒優先級,甚至可結束掉其他占CPU的程式(不推薦)uj5u.com熱心網友回復:
檢查一下你的執行緒調度。50%說明你很有可能只有一個執行緒在作業。uj5u.com熱心網友回復:
樓主,如果是雙CPU,開兩個作業執行緒效果最好uj5u.com熱心網友回復:
搜“毛德操 執行緒調度”轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/119414.html
標籤:進程/線程/DLL
上一篇:組態軟體iFix自帶定時器問題
