MinorGC FullGC

1:MinorGC 新生代GC

何时触发?

当Eden区满了无法再分配内存空间的时候此时会触发minorGC

触发时如何检查?

当执行gc前会先计算老年代剩余大小,判断是否满足新生代S区所有对象全部转移。因极端情况gc后s区所有对象都会存活。此时判断如果不够,则会去执行空间担保策略,查看历史gc后进入老年代的平均对象大小,如果不满足,此时会连带触发一次FullGc。

MinorGc后有几种情况?

新生代存活对象大于to区小于老年代则进入老年代

新生代年龄超过15岁进入老年代

新生代to区空间大于50%的最老对象进入老年代

如果老年代和to区无法存放足够的数据此时会触发一次FullGC,FullGC后依然不够则oom

2:FullGC 老年代gc

对象占空间大小超过92%,可配置。此时触发

MinorGC前空间担保检查发现历代gc后进入老年代的对象综合大于剩余空间,此时minorGC会连带进行一次FullGC

minorGC后存活对象大小超过to区和老年代,此时再次触发FullGC

相关推荐
Fireworkitte2 小时前
Apache POI 详解 - Java 操作 Excel/Word/PPT
java·apache·excel
weixin-a153003083162 小时前
【playwright篇】教程(十七)[html元素知识]
java·前端·html
DCTANT2 小时前
【原创】国产化适配-全量迁移MySQL数据到OpenGauss数据库
java·数据库·spring boot·mysql·opengauss
Touper.2 小时前
SpringBoot -- 自动配置原理
java·spring boot·后端
黄雪超2 小时前
JVM——函数式语法糖:如何使用Function、Stream来编写函数式程序?
java·开发语言·jvm
ThetaarSofVenice2 小时前
对象的finalization机制Test
java·开发语言·jvm
水木兰亭2 小时前
数据结构之——树及树的存储
数据结构·c++·学习·算法
Jess073 小时前
插入排序的简单介绍
数据结构·算法·排序算法
老一岁3 小时前
选择排序算法详解
数据结构·算法·排序算法
xindafu3 小时前
代码随想录算法训练营第四十二天|动态规划part9
算法·动态规划