欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Eclipse 内存分析器MAT(三)获取heap dumpheap dump 博客分类: Eclipse eclipseMAT 

程序员文章站 2024-03-22 22:38:46
...
1.获取出现OutOfMemoryError时对应的heap dump
通过在启动命令中追加如下jvm参数
-XX:+HeapDumpOnOutOfMemoryError
此时当应用程序出现OutOfMemoryError会在当前的工作目录下生成dump文件。可以追加如下jvm参数修改dump文件的路径
-XX:HeapDumpPath=/Users/chengaofeng/Downloads/dump

例如在eclipse中,通过如下方式追加

Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 

通过命令行启动程序时,在命令行中追加
java -server -Xmx40m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/Users/chengaofeng/Downloads/dump -classpath <...> <mainclass>

2.通过可交互命令获取heap dump
在启动命令中追加如下jvm参数
-XX:+HeapDumpOnCtrlBreak
这样可在任意想获取dump文件时,执行按下CTRL + BREAK即可
3.通过jmap命令
jmap -dump:format=b,file=<filename.hprof> <pid>

4.通过JConsole
4.1 在运行你想分析的应用的机器上启动JConsole(Linux、Mac os系统安装好jdk后直接在命令行输入jconsole即可启动,window机器上到jdk安装目录下启动./bin/jconsole.exe),启动后在jconsole页面选择自己想要分析的应用

Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 

4.2 接着选择MBean下com.sun.management.HotSpotDiagnostic操作中对应的dumpHeap,界面中有两个参数
  • p0:dump file的全路径名如/Users/chengaofeng/Downloads/dump
  • p1:一般情况下都设置成true,代表我们只关心当前存活的对象


Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 

4.3 点击dumpHeap按钮,就会在对应的位置生成dump文件

Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 

5.利用MAT获取

Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
之后选择对应的应用和文件保存地址即可

Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • 大小: 80.9 KB
  • Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • 大小: 74 KB
  • Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • 大小: 134.7 KB
  • Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • 大小: 131.7 KB
  • Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • 大小: 134.7 KB
  • Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • 大小: 79.7 KB
  • Eclipse 内存分析器MAT(三)获取heap dumpheap dump
            
    
    博客分类: Eclipse eclipseMAT 
  • 大小: 159.8 KB
相关标签: eclipse MAT