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

相关推荐
星释11 分钟前
Rust 练习册 67:自定义集合与数据结构实现
数据结构·算法·rust
泉城老铁16 分钟前
Springboot对接mqtt
java·spring boot·后端
源码_V_saaskw20 分钟前
JAVA国际版同城跑腿源码快递代取帮买帮送同城服务源码支持Android+IOS+H5
android·java·ios·微信小程序
TT哇25 分钟前
消息推送机制——WebSocket
java·网络·websocket·网络协议
镜花水月linyi39 分钟前
ConcurrentHashMap 深入解析:从0到1彻底掌握(1.3万字)
java·后端
极客Bob39 分钟前
Java 集合操作完整清单(Java 8+ Stream API)
java
雨中飘荡的记忆40 分钟前
Javassist实战指南
java
Knight_AL1 小时前
JWT 无状态认证深度解析:原理、优势
java·jwt
寒山李白1 小时前
IDEA中如何配置Java类注释(Java类注释信息配置,如作者、备注、时间等)
java
我要添砖java1 小时前
<JAVAEE> 多线程4-wait和notify方法
android·java·java-ee