當程式執行緒IO阻塞,通過top查看到cpu占比高,中間發生了什么?
uj5u.com熱心網友回復:
死機唄
uj5u.com熱心網友回復:
執行緒阻塞和CPU利用率高之間沒有必然聯系。被阻塞的執行緒一般都會進入休眠狀態,一直等到某個需要的資源(例如鎖,變數等等),才會往下執行(占用CPU);不排除寫的比較爛的代碼,一直用自旋鎖的盲目等待方式。
系統CPU利用率高,可能是其他任務導致的,以至于被阻塞的執行緒很難獲取到所需的資源
uj5u.com熱心網友回復:
執行緒IO事件并不會造成CPU高,看看是那個執行緒, 然后多執行 幾次pstack <tid > 看看這個執行緒在干啥
uj5u.com熱心網友回復:
高的是那個阻塞行程?如果是就是在等待IO,是不是的個iowait高?再找一下。轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/44495.html
標籤:系統維護與使用區
上一篇:Ubuntu下使用docker-compose 啟動gitlab容器 無法訪問首頁問題
下一篇:在Linux上出現give root password for maintenance錯誤后輸入root的密碼還是顯示錯誤
