JVM 7 で実行されている JBoss 4.2.1 アプリケーションが、スロー時にヒープ ダンプをトリガーしましたOutOfMemoryExceptions
。次のスイッチで構成された jvm があります。
-Xms1498m -Xmx3000m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError
OOME の原因を正確に把握するために、ヒープ ダンプを読み込もうとしています。大量のメモリ ブロックが消費されているように見えますが、これはある程度想定されたものです。私が今探しているのは「スモーキングガン」です。
ヒープ ダンプのメモリ不足に関する別のSO 問題をここで既に開いているので、OOME が発生したときに JVM が何をしていたかを把握しようとしています。
どのスレッドが OOME をトリガーしたかを示すヒープ ダンプはありますか? より具体的には、私の OOME をトリガーした呼び出しは何をしていたのでしょうか? メモリ リークの場合、これが間違ったトレイルを追跡している可能性があることを理解していますが、どのスレッドが例外を引き起こしているかを確認したいと考えています。
これを見るためにMATを使用する方法はありますか?