Memory Analyzer 插件下载地址:http://www.eclipse.org/mat/downloads.phpphp
点击进行下载html
3.将下载的文件解压到MyEclipse的 dropins 文件夹下eclipse
4.建立和文件夹同名的.link文件,文件中的内容就写上对应的地址(地址使用\\ 或者 /)工具
5.重启MyEclipse,便可在window---->preferances中看到Memory Analyzer选项。post
1.建立测试Java代码测试
/** *
-verbose:gc -Xms20M -Xmx20M
-XX:+HeapDumpOnOutOfMemoryErrorspa
* @author y * */ public class Test { static class OOMObject{ } public static void main(String[] args) { List<OOMObject> list = new ArrayList<OOMObject>(); while(true){ list.add(new OOMObject()); } } }
2.设置运行参数插件
参数解释:3d
1,堆是存储对象实例的,即本身写的类都是在堆中进行内存分配的;设置堆的大小:-Xmx20M(最大值) ,-Xms20M(最小值)。
2,栈是存储局部变量,操做栈,动态连接,方法出口(都在栈桢中) 的地方,调用方法时,会建立栈桢;设置栈的大小:-Xss128K。
3,方法区是存放Class的相关信息,如类名,访问修饰符,常量池,字段描述,方法描述等。此外运行时常量池是属于方法区的,即存放常量,静态常量等;设置方法区大小,-XX:PermSize=10M和-XX:MaxPermSize=10M。
4,本地直接内存;设置本地直接内存大小:-XX:MaxDirectMemorySize(默认与-Xmx的值同样)。code
3.运行程序,将会出现以下信息
分析:参照一下博客
http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-ma/index.html?ca=drs-
http://essen.iteye.com/blog/1825314
http://tivan.iteye.com/blog/1487855