スタック情報を hprof ファイルに出力する方法
プログラムを実行して VM パラメータを増やす:
-XX:+HeapDumpOnOutOfMemoryError # 会打印出现内存溢出异常时,Dump出当前内存堆转存快找以便分析
ステップ 1:
コマンド ライン インターフェイスで次のコマンドを実行します。java_pid73912.hprof はファイル名です。
jhat java_pid73912.hprof
コマンドの実行
Reading from java_pid73912.hprof...Dump file created Thu Apr 08 22:18:08 CST 2021Snapshot read, resolving...Resolving 818890 objects...Chasing references, expect 163 dots...................................................................................................................................................................Eliminating duplicate references...................................................................................................................................................................Snapshot resolved.Started HTTP server on port 7000Server is ready.
サーバーの準備ができていることが表示されたら、IP ポート アドレス ブラウザーを介してアクセスできます。私はここではローカルなので、# です。 ##localhost:7000
クリック
すべてのクラス (プラットフォームを含む) のインスタンス数を表示プラットフォームを含むクラスに関する情報が表示されます
#「すべてのクラスのインスタンス数を表示 (プラットフォームを除く)」をクリックすると、プラットフォームを除くすべてのクラスに関する情報が表示されます
class com.geniu.book.deepinJVM.chapter2.TestHeapOOM$OOMObject です。
これにより、メモリ内のオブジェクトの状態を解析したり、メモリオーバーフローが発生した場合の異常事態を解析したりすることができます。
1) アイデア プラグイン JProfiler を使用します
2) minidump_stackwalk ツールはダンプ ファイルを読み取ることができます
以上がMac プラットフォームで Java ヒープ ダンプ (hprof) ファイルを分析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。