Loading

Eclipse Memory Analyzer

先写一段可以制造堆溢出的代码

package com.test.jvm.oom;

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

/**
 * @date 2017年9月21日 
 * @Description: VM Args: -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError
 */
public class HeapOOM {
    static class OOMObject {
        
    }
    public static void main(String[] args) {
        List<OOMObject> list = new ArrayList<OOMObject>();
        while(true) {
            list.add(new OOMObject());
        }
    }
}

运行时参数如下

运行结果如下

此时,在该项目根目录路径下出现了hprof文件

接着下载eclipse memory analyzer,可以下载插件版或者standalone版本,由于我在marketplace中下载的时候,一直连接错误。最后无奈选择了独立版

在eclipse memory analyzer中,File -> Open Heap Dump,加载刚才产生的hprof文件,选择Leak Suspects Report

 此时再回到项目根目录,发现有许多新生成的文件

和网上查到的略有不同,但至少zip文件还是有的。打开之后,就是一个html文档

 

posted @ 2017-09-22 14:24  注销111  阅读(420)  评论(0编辑  收藏  举报