JVM分代回收

JVM分代回收

堆中分为两份:新生代和老年代(1:2)

新生代

新生代的内部分为了三个区域

Eden区,From区,To区8:1:1

当eden区内存不足时,就会使用可达性分析算法进行标记

标记eden区和from区的存活对象

将这些对象复制到to区,对eden区和from区进行清除

如果eden下次又出现内存不足

就将这些对象复制到from区,对eden区和to区进行清除

新生代->老年代

当一个对象在15次GC中都存活下来,就会晋升到老年代

MinorGC

发生在新生代的垃圾回收,暂停时间短

暂停时间:暂停所有应用程序线程,等待垃圾回收完成

MixedGC

新生代 + 老年代部分区域的垃圾回收

FullGC

新生代 + 老年代完整的垃圾回收,暂停时间长,尽量避免

相关推荐
小园子的小菜1 天前
深入理解 JVM 垃圾回收:从对象判定、回收算法到经典收集器全解析
jvm·算法
孫治AllenSun1 天前
【JVM】四大引用类型分析
java·开发语言·jvm
笨笨饿2 天前
101_详解USB协议
java·jvm·数据结构
雪的季节2 天前
Python 垃圾回收触发完整机制
java·jvm·算法
heimeiyingwang3 天前
【架构实战】JVM调优:GC选择与堆内存分配策略
jvm·架构
J-Tony113 天前
【JUC】关于锁的那点事
java·jvm·算法
斑鸠喳喳3 天前
类加载子系统
jvm
youtootech3 天前
HarmonyOS《柚兔学伴》项目实战08-关系型数据库入门——待办事项持久化
jvm·数据库·华为·harmonyos
weixin_727535623 天前
JVM 常见八股面试问答:深入底层原理
jvm·面试·职场和发展
Java技术实战3 天前
一文通解:数据结构之 栈
java·jvm·数据结构·