我在教程中看到,使用命令 jmap -heap<pid> ,我可以接收有关堆状态的信息。现在此命令不可用。只有 jmap -dump:live,format:b,file=heap.bin 但它将数据保存为不可读的bin格式。如何使用接收堆状态信息 jmap 到控制台?
jmap -heap<pid>
jmap -dump:live,format:b,file=heap.bin
jmap
升级。我找到了答案:在新版本的jdk上,我们可以使用命令:
jm2pwxwz1#
您可以分析 jmap -dump:live,format:b,file=heap.bin 与https://www.eclipse.org/mat/. mat能够读取二进制格式。
2ul0zpep2#
如果在unix/linux平台上运行,请执行以下命令以生成堆转储。
kill -3 <PID of the Java Process>
生成的堆转储文件要么在执行命令的用户的主目录中,要么在jar文件的绝对路径中。
ef1yzkbh3#
我找到了答案。在新的jdk版本中,它可以工作:
jhsdb jmap --heap --pid <pid number>
3条答案
按热度按时间jm2pwxwz1#
您可以分析
jmap -dump:live,format:b,file=heap.bin
与https://www.eclipse.org/mat/. mat能够读取二进制格式。2ul0zpep2#
如果在unix/linux平台上运行,请执行以下命令以生成堆转储。
生成的堆转储文件要么在执行命令的用户的主目录中,要么在jar文件的绝对路径中。
ef1yzkbh3#
我找到了答案。在新的jdk版本中,它可以工作: