JVM参数-XX:+HeapDumpOnOutOfMemoryError
前言
- jdk 1.8
- eclipse 4.9.0
- spring boot 2.0.0.RELEASE
-XX:+HeapDumpOnOutOfMemoryError
当堆内存空间溢出时输出堆的内存快照。
复现一下内存空间溢出
- 创建一个spring boot程序。只要能够运行就可以。
- 指定内存最大值为10M(
-Xmx10M
)。10M,呵呵,肯定启动不了 spring boot ,肯定内存空间溢出。
eclipse中配置程序启动参数:
eclipse中的执行结果:
另一个复现内存空间溢出的方法
编写一个内存泄漏的程序,漏的足够多时,就内存空间溢出了。
class Wrapper {public static void main(String args[]) throws Exception {Map map = System.getProperties();Random r = new Random();while (true) {map.put(r.nextInt(), "value");}} }
添加参数 -XX:+HeapDumpOnOutOfMemoryError
在java命令行中添加vm参数-XX:+HeapDumpOnOutOfMemoryError。
eclipse中配置程序启动参数:
eclipse中的执行结果:
内存快照的生成目录,默认在java的启动目录下。
-XX:HeapDumpPath
-XX:HeapDumpPath=目录或文件
-XX:HeapDumpPath=目录
时,参数表示生成DUMP文件的路径。默认为:java__heapDump.hprof。
-XX:HeapDumpPath=文件
时,形如-XX:HeapDumpPath=d:\java_heapdump.hprof。
略。
内存快照的分析
mat
参考
https://blog.csdn.net/liuxinghao/article/details/77934725
JVM参数-XX:+HeapDumpOnOutOfMemoryError相关推荐
- JVM参数-XX:+HeapDumpOnOutOfMemoryError使用方法
1.配置方法 在JAVA_OPTIONS变量中增加 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${目录}. 例如:export JAVA_OPT ...
- 关于JVM参数-XX:SurvivorRatio的理解
关于JVM参数-XX:SurvivorRatio的理解 JVM参数中有一个比较重要的参数SurvivorRatio,它定义了新生代中Eden区域和Survivor区域(From幸存区或To幸存区)的比 ...
- JVM 参数 -XX:+PrintGCDetails
-XX:+PrintGCDetails 表示打印 gc 详细信息 例如 普通 gc 的详细信息 2020-09-14T23:21:32.853+0800:[GC (Allocation Failure ...
- Java虚拟机详解(五)------JVM参数(持续更新)
JVM参数有很多,其实我们直接使用默认的JVM参数,不去修改都可以满足大多数情况.但是如果你想在有限的硬件资源下,部署的系统达到最大的运行效率,那么进行相关的JVM参数设置是必不可少的.下面我们就来对 ...
- java虚拟机调优_Java虚拟机中JVM参数调优及其有用的命令
3.1参数及调优 1.-XX:-HeapDumpOnOutOfMemoryError:当首次遭遇内存溢出时Dump出此时的堆内存. 2.-XX:HeapDumpPath=./java_pid.hpro ...
- 启动脚本,以及jvm参数含义
一.startup.sh: #!bin/sh if[!-x logs];then mkdir logs fi export EXEC=taskcenter.jar export CLASSPATH=. ...
- JVM参数无效(-XX:+HeapDumpOnOutOfMemoryError设置无效)
执行以下错误设置命令 java -XX:+PrintGCDetails -jar .\mgJavaNote-1.0-SNAPSHOT.jar -XX:+HeapDumpOnOutOfMemoryErr ...
- JVM参数之-XX:+HeapDumpOnOutOfMemoryError(导出内存溢出的堆信息(hprof文件))
当出现HeapDumpOnOutOfMemoryError错误时,我们需要分析原因,下面的程序就是模拟这个错误并导出dump文件,好让你分析 GcTest.java package gc; publi ...
- java -XX:+PrintFlagsInitial该命令可以查看所有JVM参数启动的初始值
java -XX:+PrintFlagsInitial 该命令可以查看所有JVM参数启动的初始值 [Global flags]intx ActiveProcessorCount = -1 {produ ...
最新文章
- 常用的几种大数据架构剖析
- oracle 取整的几种方法
- 设置edittext不自动获取焦点
- 浏览器兼容性问题解决方案· 总结
- php console postman,postman内置脚本说明
- 小程序开发(7)-之获取手机号、用户信息
- python 风玫瑰图_python之windrose风向玫瑰图的用法
- 【Flink】Flink source后全过滤数据导致监控数据为0
- 命中书中题有奖反馈活动_三级网络技术
- 【转】C# 中@符号在字符串中的作用
- 如何下载矢量道路路网电子地图
- 反编译获取任何微信小程序源码(完)
- K-近邻算法(KNN)
- 清理浏览器html缓存图片吗,浏览器怎么清除缓存
- 使用mysql语句进行多表联查(以三个表为例)
- BC #38 / HDU5208 Where is Bob · 数位dp
- 我的职业性格测评报告
- 2020年十大办公室装修设计建议!
- 无线蓝牙耳机哪种款式好用?口碑最好的蓝牙耳机推荐!
- 理解HTML HTTP API 和URL