JVM虚拟机:通过日志学习PS+PO垃圾回收器

我们刚才设置参数的时候看到了-XX+PrintGCDetails表示输出详细的GC处理日志,那么我们如何理解这个日志呢?日志是有规则的,我们需要按照这个规则来理解日志中的内容,它有两个格式,一个格式是GC的格式(新生代),另外一个格式是FUll GC(老年代)。

GC的格式

PSYoungGen表示GC类型,2048K表示YoungGC前新生代内存占用,488K表示GC后新生代内存占用,2560K表示新生代的总大小。然后后面的2048K表示GC前堆内存占用,773K表示表示GC后堆内存的占用,9728K表示堆的总大小,0.0015243表示YoungGC耗时。

Full GC格式

Full GC,PSYoungGen(新生代区),GC前为0k,GC后为0k,young总大小为2048k

parOldGen(老年代),GC前为3767,GC后为3724,总的为7168k。GC前堆内存为3767K,GC后堆内存为3724,总的为9216K。

Metaspace(元数据区),GC前为3492K,GC后为3492,总的大小为1056768K

相关推荐
nice_lcj52014 分钟前
ThreadLocal 入门:它是怎么隔离数据的、为什么会导致内存泄漏
java·开发语言·后端·面试·并发编程·内存泄漏·threadlocal
紧跟先前的步伐25 分钟前
Go AI Agent 实战 28|Agent 的预算、超时与停止条件
开发语言·人工智能·后端·ai·golang
秋天的怀念_David29 分钟前
算法一千零一夜 · 第二十六夜 协议的母语
java·spring boot·算法
灿飞29 分钟前
Kotlin与Java虚拟机八:控制流与 when:卫语句、上下文相关解析与穷尽性
java·kotlin
文丑颜不良啊1 小时前
LeetCode2021~2040题目解析
java·leetcode
bksczm2 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
春涧草茶2 小时前
慢就是快16-1协程
开发语言·前端·python
liangbo72 小时前
Spring系列03:Bean 的三种注册方式
java·spring
余槐i2 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
SL_staff2 小时前
制造业订单交付总在最后一刻爆雷?用结构化计划模板打通跨系统协同断点
java·开源·全栈