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

相关推荐
七夜zippoe8 分钟前
缓存三大劫攻防战:穿透、击穿、雪崩的Java实战防御体系(二)
java·开发语言·缓存
毕设源码-邱学长23 分钟前
【开题答辩全过程】以 博物馆参观预约管理系统为例,包含答辩的问题和答案
java·eclipse
楼田莉子39 分钟前
C++动态规划算法:斐波那契数列模型
c++·学习·算法·动态规划
1373i1 小时前
【Python】通俗理解反向传播
深度学习·算法·机器学习
郭庆汝1 小时前
Windows安装java流程
java·windows·android studio
Madison-No71 小时前
【C++】日期类运算符重载实战
c++·算法
Yvonne爱编码1 小时前
后端编程开发路径:从入门到精通的系统性探索
java·前端·后端·python·sql·go
cici158741 小时前
基于K-SVD的稀疏编码去噪算法
算法
迦蓝叶1 小时前
JAiRouter 0.8.0 发布:Docker 全自动化交付 + 多架构镜像,一键上线不是梦
java·人工智能·网关·docker·ai·架构·自动化
电力程序小学童1 小时前
基于密集型复杂城市场景下求解无人机三维路径规划的Q-learning算法研究(matlab)
算法·matlab·无人机