Dump 就是对程序运行时内存上的信息进行转储, 让我们可以查看程序当时的运行情况. Dump 对于调优和排错是非常有用的工具.
Heap Dump
Java 运行时对象分配在堆内存上, Heap dump 就是对堆内存进行转储.
生成
jmap
通过命令jmap -dump:live,format=b,file=***.hprof pid
eg:jmap -dump:live,format=b,file=dump.hprof 48671
环境变量
-XX: HeapDumpOnOutOfMemoryError
当OutOfMemoryError发生时自动生成 Heap Dump 文件
-XX:HeapDumpPath=d:\test.hprof
指定 dump 文件存储路径
eclipse参数
eclipse中运行参数添加运行参数
-XX: HeapDumpOnOutOfMemoryError ##dump出当前的内存堆转储快照
-XX:HeapDumpPath=E:\job ##指定路径(转储文件还是挺大的)
jconsole
ps:好像生成dump文件,然后把后缀改成hprof也可以(忘了从哪里看到的了,用它须谨慎)