如何在java中使用jmap分析堆转储
我正在使用以下命令创建堆转储:
jmap -dump:file=DumpFile.txt <process-id>
我已经打开了生成的文件 - 但它不是可读格式。因此,请让我知道如何分析生成文件中的数据。DumpFile.txt
我正在使用以下命令创建堆转储:
jmap -dump:file=DumpFile.txt <process-id>
我已经打开了生成的文件 - 但它不是可读格式。因此,请让我知道如何分析生成文件中的数据。DumpFile.txt
您应该在没有任何路径的情况下使用。因此,它会创建一个*.bin文件,您可以使用该文件打开该文件(与jmap相同的路径)。这是打开此类转储文件的绝佳工具。jmap -heap:format=b <process-id>
jvisualvm.exe
您可以使用 jhat
(Java 堆分析工具)读取生成的文件:
jhat [ options ] <heap-dump-file>
jhat 命令解析 java 堆转储文件并启动 Web 服务器。jhat使您能够使用您喜欢的Web浏览器浏览堆转储。
请注意,您应该有一个二进制格式的输出,以便能够使用 解析它。您可以使用 Option 以这种格式生成转储。hprof
jhat
format=b
-dump:format=b,file=<filename>