1. MAT 다운로드 사이트
http://www.eclipse.org/mat/downloads.php
2. 다음 코드를 작성해서 테스트 해보기
5. 분석화면
내용을 보면 Main.main 프로그램을 실행하다가 OutObMemoryError이 발생했다.
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
내용을 보면 Main.main 프로그램을 실행하다가 OutObMemoryError이 발생했다.