轉:MyEclipse安裝Eclipse Memory Analyzer插件,並進行錯誤文件分析流程

轉自 http://www.cnblogs.com/nb44c/p/5218880.html

1.先安裝MAT插件

  1. Memory Analyzer 插件下載地址:http://www.eclipse.org/mat/downloads.phpphp

  2. 點擊進行下載html

火狐截圖_2016-02-25T16-12-52.948Z

3.將下載的文件解壓到MyEclipse的  dropins  文件夾下eclipse

image

4.建立和文件夾同名的.link文件,文件中的內容就寫上對應的地址(地址使用\\ 或者 /)工具

image

5.重啓MyEclipse,便可在window---->preferances中看到Memory Analyzer選項。post

image

 

 

2.使用MAT工具進行分析實例

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.設置運行參數插件

image

image

參數解釋: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

相關文章
相關標籤/搜索