原文地址:http://blog.csdn.net/yunji3344/article/details/8843493
之前做android开发的使用遇到内存问题曾看到mat能分析内存使用状态,折腾过了一次。现在有空继续折腾一下。
第一步:下载Eclipse MAT
下载地址:http://www.eclipse.org/mat/downloads.php
可以看到最新版是1.2.1,鉴于myeclipse的安装选择压缩包离线升级
第二步:下载之后将压缩包解压,放置到Myeclipse 的MyEclipse\MyEclipse 10\dropins目录下
创建一个mat的文件夹,解压的文件都放那里
重启myeclipse,当启动完成后可以看到
第四部:打开Window->Perferences,你会看见这个项目:
第五步:
写个小程序测试一下
- import java.util.Date;
- import java.util.HashMap;
- import java.util.Map;
- public class MatTest {
- public static void main(String[] args) {
- Map<Integer,Date> map=new HashMap<Integer, Date>();
- for (int i = 0; i < 600000000; i++) {
- map.put(i, new Date());
- }
- }
- }
先工程右键 Java Application
再工程右键 Run Configurations..
在运行配置窗口为argument添加-XX:+HeapDumpOnOutOfMemoryError如下图
配置完成点击“run”可以看到程序报错
刷新一下项目目录可以看到生成一个java_pid5012.hprof文件
双击打开