测试 OOM 设置JVM参数然后GC日志分析
2022/1/26 23:04:30
本文主要是介绍测试 OOM 设置JVM参数然后GC日志分析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
编写堆内存溢出代码
public class Test2 { public static void main(String[] args) { String str = "dededddddddddddddddddddddd"; while (true){ str+=str+"dedddddddddddddddddddddddddddddddddddddddddddddddddd"; } } }
在我们idea或者eclipse里配置我们JVM参数:
-Xms8m -Xmx8m -XX:+PrintGCDetails
参数说明:
-XX:+PrintGCDetails 发生gc时打印日志
-Xmx8M 表示堆最大为8M
-Xms8M 表示初始堆大小为8M
表示我们当前JVM中堆内存最大只能使用8m,测试出堆内存溢出异常 查看GC日志,
在我们测试代码运行后 控制台出现以下日志
GC:表示轻GC Full GC:表示重GC
[GC (Allocation Failure) [PSYoungGen: 1536K->504K(2048K)] 1536K->816K(7680K), 0.0009005 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
1536K->504K(2048K)] 1536K->816K(7680K)
1536K:表示gc前,新生区已使用的空间
504K:表示gc后,新生区已使用的空间
2048K:新生区内存总大小
1536K:表示gc前,堆已使用空间的大小。
816K:表示gc后,堆所使用空间大小。
7680K:等于新生区加老年区的和
这篇关于测试 OOM 设置JVM参数然后GC日志分析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?