Java while迴圈cpu占用高排查和優化

2021-09-09 08:34:55 字數 802 閱讀 8843

放幾個阿里雲的優惠鏈結 代金券 / 高效能伺服器2折起 / 高效能伺服器5折

命令列工具的功能都很強大,像jmap、jstat、jstack、jps這些,功能和一些收費軟體差不多,但是沒有gui看起來就有些費勁。由於使用windows分析就使用自帶的jmc來用了,只要在命令列輸入jmc就可以啟動。

由於已經知道cpu占用原因,這裡就直接給出錯誤的示例。如果在伺服器上排查需要結合上述命令列工具,具體使用可以參考這裡。

public

class

testcpu

}class

taskthread

extends

thread

@override

public

void

run()}

}}

上述**在執行又占用cpu穩定在15%左右,機器配置為i7 4核8g

class

taskthread

extends

thread}}

@override

public

void

run()}

while

(!tasks.

isempty()

)}}catch

(interruptedexception e)

}}

Java while迴圈和for迴圈

while迴圈的語句規則是在while 中為乙個條件 假設我們需要列印出三句一樣的語句,可以這樣使用 int sum 1 while sun 3 如果需要一直輸出可以使用 while true 如果使用這種方法只讓輸出3次需要使用if語句進行判斷,並執行停止 int sum 0while true ...

kswapd0導致cpu佔比高的分析

netstat antlp發現kswapd0 指向的是乙個荷蘭ip,另外也發現rsync程序也指向乙個荷蘭ip。所以初步判定該程式屬於挖礦程式 ls ail proc pid找到exe對應的應用位址,位址包含 configrc 發現其中配置了真實檔案的位址 tmp x25 unix 經過檢視該目錄下...

mysql資料庫配置優化(佔cpu過高問題)

輸出結果顯示了有哪些執行緒在執行,可以幫助識別出有問題的查詢語句 show processlist wait timeout,即睡眠連線超時秒數,如果某個連線超時,會被 mysql 自然終止。show global variables like wait timeout 設定為30秒 set glo...