使用MAT比較多个heap dump文件
调试内存泄露时,有时候适时比較2个或多个heap dump文件是非常实用的。这时须要生成多个单独的HPROF文件。
以下是一些关于怎样在MAT里比較多个heap dumps的内容(有一点复杂):
1. 第一个HPROF 文件(usingFile > Open Heap Dump ).
2. 打开Histogram view.
图1. Histogram Viewbutton
3. 在NavigationHistory view里 (假设看不到就从Window > Navigation History找 ), 右击histogram然后选择Add to Compare Basket .
4. 打开第二个HPROF 文件然后重做步骤2和3.
5. 切换到Compare Basket view, 然后点击Compare the Results (视图右上角的红色"!"图标)。
图2. 对照分析结果
如上,结果图中。Objects #1所代表的weak.create.hprof比Objects#0所代表的main.hporf多出了一个WeakReferencesActivity。Objects #2更是多出10000个WFObject对象出来。结果非常明显。
本文属sodino原创。发表于博客:http://blog.csdn.net/sodino,转载请注明出处。
相关代码能够从QQ群Code2Share(363267446)中的群文件里下载。