Eclipse MAT (Memory Analysis Tool) 사용하기

1. MAT 다운로드 사이트
http://www.eclipse.org/mat/downloads.php

2. 다음 코드를 작성해서 테스트 해보기

import java.util.ArrayList;
import java.util.List;

public class Main {

    List<String> memoryLeakList = new ArrayList<>();

    public static void main(String[] args) {

        Main mainObj = new Main();
        while(true) {
            mainObj.memoryLeakList.add("Memory......");
        }

    }
}


3. JVM Option으로 다음과 같이 설정한다.
-XX:+HeapDumpOnOutOfMemoryError


4. MAT 메모리 설정을 매우 크게 준다. 
Eclipse/MemoryAnalyzer.ini 파일을 다음과 같이 메모리를 올려준다. 

-startup
../Eclipse/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar
--launcher.library
../Eclipse/plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.300.v20150602-1417
-vmargs
-Xmx10g
-Dorg.eclipse.swt.internal.carbon.smallFonts
-XstartOnFirstThread




5. 분석화면


내용을 보면 Main.main 프로그램을 실행하다가 OutObMemoryError이 발생했다.