原文地址:http://blog.youkuaiyun.com/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文件

双击打开

本文介绍如何在MyEclipse中安装Eclipse Memory Analyzer Tool (MAT)并使用它来诊断Java应用程序的内存泄漏问题。通过一个简单的示例程序演示了如何生成堆内存快照(.hprof文件),并利用MAT进行内存分析。
2753

被折叠的 条评论
为什么被折叠?



