Javaのjstack分析プロセス情報

Javaのjstack分析プロセス情報

 

1.(19893)現在のプロセスのJavaプログラムのIDを見つけます

PS -ef | grepをjavaの、PS -aux | grepをjavaのすべてのクエリプロセス情報、AUXは、-efは、System VスタイルBSDスタイルです。主な違いは-ef、AUX TRUNCATEコマンド列ではありません。

 

 

2.各スレッドの使用状況の現在のプロセスを見直し 

現在のプロセス・スレッドのCPU使用率を表示するトップ-HP {PID}#

-hp 19893トップ    #(以下は19894をpidのことに注意してください、19895 ... 26983澤はプロセスIDではありませんが、スレッドID)

 

プロセスの詳細を表示することにより、スレッドの状態のプロセスを表示するために3.jstack

jstack 19893

トップコマンド内に取得されたスレッドの PID、PIDは、スレッドダンプに16進数に変換し、各スレッドがNIDを有する対応するNIDを見つけるために、

19893のコマンドの結果-HPスレッドID NIDトップ、六角に対応!

例えば:ヘキサン:NID = 0x690d小数点に対応する:PID = 26893(最終行のPIDにおける第二の画像点)、trueに対応する他のスレッド〜

基本変換リファレンス記事https://www.cnblogs.com/summerdata/p/10722144.html

 

懸念のダンプファイルは次のスレッドの状態です

デッドロック:デッドロック(フォーカス) 

実行:Runnableを   

待機リソース待機状態の条件ON(フォーカス) 

モニターを取得するために待機中待機ONモニタエントリ(フォーカス)

一時停止一時停止

オブジェクト待機はObject.wait()またはTIMED_WAITING

ブロッキングブロックされた(フォーカス)  

停止パーク

 

PS:また、オブジェクトがデッドロックロックされているかどうか、ロックされた情報を調べる必要があります。

 

共有への知識:

-P {PID}#は、現在のプロセスの参照ファイル情報を表示するlsofを
EG:lsofを-P 19893 

lsofを-i:8080#は、現在のネットワーク・アクセス・ポート情報を表示するために、
スレッドの使用の現在のプロセスを表示するために上部-HP {PID}位 例えば:上部-hp 19893

  

おすすめ

転載: www.cnblogs.com/DFX339/p/12456280.html