So drucken Sie Stapelinformationen in die hprof-Datei.
Führen Sie das Programm aus, um VM-Parameter hinzuzufügen:
-XX:+HeapDumpOnOutOfMemoryError # 会打印出现内存溢出异常时,Dump出当前内存堆转存快找以便分析
Schritt 1:
Führen Sie in der Befehlszeilenschnittstelle Folgendes aus Befehl, wobei java_pid73912.hprof Wenn Sie den Befehl für den Dateinamen
jhat java_pid73912.hprof
ausführen, wird
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.
ausgegeben. Wenn Sie Server ist bereit.
sehen, können Sie über die IP- und Portadresse darauf zugreifen Browser. Ich bin hier lokal, also ist es localhost:7000
Server is ready.
之后,可以通过 ip + port 地址浏览器访问,我这里是本地,所以是 localhost:7000
点击Show instance counts for all classes (including platform)
会展示包含平台的类的的信息
点击Show instance counts for all classes (excluding platform)
会展示不包含平台的所有类的信息
可以看到我这里占用空间最多的类是 class com.geniu.book.deepinJVM.chapter2.TestHeapOOM$OOMObject
Klicken Sie auf Instanzanzahl für alle Klassen anzeigen (einschließlich Plattform)
, um Informationen zu Klassen einschließlich der Plattform anzuzeigen
Klicken Sie auf Anzeigen Instanzanzahl für alle Klassen (ohne Plattform) code> zeigt Informationen zu allen Klassen an, die die Plattform nicht enthalten
class com.geniu.book.deepinJVM ist .chapter2.TestHeapOOM$OOMObject
mit mehr als 800.000 Instanzen. 🎜🎜🎜Auf diese Weise können Sie die Objekte im Speicher analysieren und ungewöhnliche Situationen analysieren, wenn ein Speicherüberlauf auftritt. 🎜🎜🎜Andere Vorschläge: 🎜🎜1) Verwenden Sie das Ideen-Plug-in JProfiler🎜🎜2) minidump_stackwalk-Tool, das Dump-Dateien lesen kann🎜Das obige ist der detaillierte Inhalt vonWie analysiere ich eine Java-Heap-Dump-Datei (hprof) auf einer Mac-Plattform?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!