美文网首页
out of memory dump分析

out of memory dump分析

作者: lomo萌神 | 来源:发表于2020-11-25 22:19 被阅读0次

1 设置-Xms和-Xmx相等,避免内存频繁回收申请

2 -XX:+AlawaysPreTouch可避免预热:

如果程序最开始运行就需要申请3g内存,该参数可以帮助直接申请3g内存,避免频繁申请内存。

3、out of memory解决方案(以下均假设不确定哪出问题)

4 例子

4.1 编写出现OutOfMemoryError的代码

/**
 * @author lomo
 * @date 2020/11/25 21:53
 * @description
 */
public class OOMTest {
    private static volatile boolean flag = true;

    public static void main(String[] args) {
        ExecutorService executorService = Executors.newFixedThreadPool(2);
        while (flag) {
            executorService.submit(() -> {
                System.out.println(Thread.currentThread().getName());
                try {
                    Thread.sleep(3000L);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            });
        }
    }

}

4.2 IDEA配置JVM的启动参数

点击Edit Configurations...

-Xms60m -Xmx60m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\logs

5. 分析

5.1 Dump下的文件:

5.2

采用IBM HeapAnalyzeer

链接: https://pan.baidu.com/s/1nA9hqDSpt3liRDuBAV2ZMA 提取码: ysq7

下载完成之后是hump分析.jar

运行jar包


选择我们dumping下来的.hprof文件


1
2
3

基本上就能看出问题出在哪

相关文章

网友评论

      本文标题:out of memory dump分析

      本文链接:https://www.haomeiwen.com/subject/ysdoiktx.html