スレッド実行診断では、jstackを使用して、スレッドが無限ループであり、スレッドのデッドロックであるかどうかを確認します。

topを使用して、CPU占有率が高すぎるプロセスを見つけ、占有率が高すぎるpidを見つけます。

top

ここに画像の説明を挿入します

psコマンドを使用して、CPU占有率が高すぎる原因となったスレッドをさらに特定する場合

ps H -eo  pid,tid,%cpu | grep 进程id

ここに画像の説明を挿入します

jstackプロセスID

jstack 32655

問題のあるスレッドはスレッドIDに従って見つけることができ、問題のあるコードのソース行番号をさらに見つけることができます。
計算機を使用して、スレッド番号32665を16進数に変換します。結果は7F99
ここに画像の説明を挿入します
です。報告された例外でnidの値を見つけると、対応するコードエラーの場所を見つけることができます。
ここに画像の説明を挿入します
オンラインコードもデッドロックしている可能性があります。同じページでjstackプロセスIDを使用して診断する

jstack 32752

出力の監視中にデッドロックが発生しました
ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/u014496893/article/details/114551142