内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

一.安装

首先,你得有一个Eclipse(因为MAT是Eclipse的插件)

然后,你要在Eclipse上安装MAT,步骤如下:

1.点击Help,Install New Soft,就出现了以下Install界面:然后我们点击ADD,在弹出的框中填上Mat插件的地址:http://download.eclipse.org/mat/1.6/update-site/,确定后,

点击Select All,点击Next,之后就一直确定,就能安装了。

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

 

等待5到10分钟,跟网速也有关。

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

安装之后需要重启Eclipse.

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

二.MAT导入文件

1.打开DDMS

2.选中要分析的应用

3.点击Update Head内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析按钮和Dump HPROF file内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析按钮(这里要等一会儿)

4.选择你要存储的位置,存储hprof文件

5.将.hprof文件进行转换,转换的方法:将.hprof文件拷贝到PC上的/ANDROID_SDK/tools目录下,并输入命令hprof-conv xxx.hprof yyy.hprof,其中xxx.hprof为原始文件,yyy.hprof为转换过后的文件。转换过后的文件自动放在/ANDROID_SDK/tools目录下。

6.将转换后的文件拖入Eclipse中

7.可以看到以下界面。

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

三.MAT分析文件

1.Histogram操作:列出每个类实例的数量

点击Action下的Histogram,得到以下结果

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

我们可以在第一行输入进行正则匹配:

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

可以选中某一条点击右键进行更多的操作

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

比较重要的一点,右键出来选中List Objects,得到的结果再右键选中"Paths to GC Roots",我们可以通过它快速找到GC ROOT.如果存在GC ROOT,它就不会被回收。

 

 

jconsole工具

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析

 

jvisualvm

内存分析工具MAT(Memory Analyzer Tool)从安装到使用,配合jconsole jvisualvm分析