MAT插件分析内存泄露
2014-12-23 11:13
204 查看
系统上线后,程序报出out of memory错误。一方面先加大程序运行的内存以解燃眉之急,另一方面希望能有个工具能查出内存泄露的原因。
通过查阅资料发现了Memory Analyzer这个eclipse插件,下面讲下怎么用。
首先,获取Heap dump文件。
有三种方式:
1、设置JVM参数,-XX:+HeapDumpOnOutOfMemoryError,在内存溢出的时候就会生成Heap dump文件
2、使用jmap。(windows可以通过任务管理器查看pid)
Java5:jmap -heap:format=b <pid>;
Java6:jmap -dump:format=b,file=HeapDump.bin <pid>
3、在本机运行java程序的时候,直接通过Memory Analyzer生成Heap dump文件。
其次,安装Memory Analyzer。
现在已经出1.2.1了,下载地址http://www.eclipse.org/mat/downloads.php
也可以通过eclipse install new software ,地址http://download.eclipse.org/mat/1.2/update-site/
安好后就可以开始看问题啦!
进入后,主页面如下图所示:
从上图可以看到它的大部分功能。
1. Histogram可以列出内存中的对象,对象的个数以及大小。
2. Dominator Tree可以列出那个线程,以及线程下面的那些对象占用的空间。
3.Top consumers通过图形列出最大的object。
4.Leak Suspects通过MA自动分析泄漏的原因。
这次重点是看Leak Suspects,点开后就能看到
点 Detial就能看到实际的一些情况,因为我的错误比较2,所以到这步就能看到原因,fix it!
通过查阅资料发现了Memory Analyzer这个eclipse插件,下面讲下怎么用。
首先,获取Heap dump文件。
有三种方式:
1、设置JVM参数,-XX:+HeapDumpOnOutOfMemoryError,在内存溢出的时候就会生成Heap dump文件
2、使用jmap。(windows可以通过任务管理器查看pid)
Java5:jmap -heap:format=b <pid>;
Java6:jmap -dump:format=b,file=HeapDump.bin <pid>
3、在本机运行java程序的时候,直接通过Memory Analyzer生成Heap dump文件。
其次,安装Memory Analyzer。
现在已经出1.2.1了,下载地址http://www.eclipse.org/mat/downloads.php
也可以通过eclipse install new software ,地址http://download.eclipse.org/mat/1.2/update-site/
安好后就可以开始看问题啦!
进入后,主页面如下图所示:
从上图可以看到它的大部分功能。
1. Histogram可以列出内存中的对象,对象的个数以及大小。
2. Dominator Tree可以列出那个线程,以及线程下面的那些对象占用的空间。
3.Top consumers通过图形列出最大的object。
4.Leak Suspects通过MA自动分析泄漏的原因。
这次重点是看Leak Suspects,点开后就能看到
点 Detial就能看到实际的一些情况,因为我的错误比较2,所以到这步就能看到原因,fix it!
相关文章推荐
- MAT插件分析内存泄露之二
- 使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露
- 使用Memory Analyzer Tool(MAT)Eclipse插件分析内存泄露
- 使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露
- 关于内存泄露分析插件 MAT 的用法
- 使用Memory Analyzer Tool(MAT)Eclipse插件分析内存泄露
- 【内存泄露排查】应用内存分析方案,采用jmap命令dump内存数据采样后,eclipse mat插件分析
- 使用Memory Analyzer Tool(MAT)Eclipse插件分析内存泄露
- Android 性能优化之使用MAT分析内存泄露问题
- Eclipse Memory Analyzer tool(MAT)分析内存泄露2
- MAT内存泄露分析
- Android 性能优化之使用MAT分析内存泄露问题
- 代立东-----使用MAT分析内存泄露【还有其他文章都是BigData优化方面的内容,很有用】
- Android 性能优化之使用MAT分析内存泄露问题
- Android内存泄露案例分析(内存分析工具DDMS和MAT工具)
- [Android内存分析] 使用MAT工具做内存泄露分析一
- Android 性能优化之使用MAT分析内存泄露问题
- Android 性能优化之使用MAT分析内存泄露问题