一、前言

最近学习深入java虚拟机的书,照着里面的例子跑了下。

下面是demo:

/**
 * VM Args:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError
 * @author zzm
 */
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文件路径:

E:\IdeaProjects\java-virtual\java_pid2432.hprof

 

打开这种文件的话,可以使用如下的软件:

Memory Analyzer

 

官网:http://www.eclipse.org/mat/downloads.php

 

双击打开,装载对应的 hprof 即可。

 

二、使用案例

实战分析Tomcat的类加载器结构(使用Eclipse MAT验证)

转载于:https://www.cnblogs.com/grey-wolf/p/7440545.html

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐