[JVM篇]分代垃圾回收

分代垃圾回收

分代收集法 是目前大部分 JVM 所采用的方法,其核心思想是根据对象存活的不同生命周期将内存划分为不同的域,一般情况下将 GC 堆划分为老生代 (Tenured/Old Generation)和新生代(Young Generation)。老生代的特点是每次垃圾回收时只有少量对象需要被回收,新生代的特点是每次垃圾回收时都有大量垃圾需要被回收,因此可以根据不同区域选择不同的算法。

新生代(标记-复制算法)

每次垃圾收集都能发现新生代存活对象特别少,只有少量存活,死去对象特别多,因此选用"标记-复制算法",只需付出少量存活对象的复制成本就可以完成收集。

老年代(标记-整理算法)

老年代活着的对象特别多,适用于"标记-整理"或"标记-清除"算法。

因为对象存活率高,没有额外空间对它进行分配担保,就必须采用"标记-整理"或"标记-清除"算法来进行回收,不必进行内存复制,且直接腾出空闲内存。

相关推荐
3***31212 小时前
java进阶1——JVM
java·开发语言·jvm
打工人你好2 天前
如何设计更安全的 VIP 权限体系
java·jvm·安全
unclecss2 天前
把 Spring Boot 的启动时间从 3 秒打到 30 毫秒,内存砍掉 80%,让 Java 在 Serverless 时代横着走
java·jvm·spring boot·serverless·graalvm
q***2512 天前
java进阶1——JVM
java·开发语言·jvm
zlpzlpzyd2 天前
jvm 偏向锁禁用以及移除
jvm
while(1){yan}2 天前
线程的状态
java·开发语言·jvm
20岁30年经验的码农2 天前
Java JVM 技术详解
java·jvm·压力测试
1***81532 天前
C在游戏中的场景管理
java·jvm·游戏
上78将2 天前
jvm的基本结构
jvm
Tan_Ying_Y2 天前
JVM内存结构———他的底层完整结构
jvm