关于javacore和dump文件

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

关于javacore和dump文件_第1张图片

ps:好像生成dump文件,然后把后缀改成hprof也可以(忘了从哪里看到的了,用它须谨慎)

jvisualvm

你可能感兴趣的:(JVM,Tuning)