IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:标记-清除

共 1 篇相关文章

IT 累计浏览 3,628

JVM垃圾收集算法

这篇系统梳理了JVM垃圾回收中几种核心算法的思路与权衡。文章从最基础的“标记-清除”算法切入,指出了它虽简单却有效率低下与内存碎片两大硬伤。为解决效率,“复制算法”以空间换时间,通过内存分区和存活对象拷贝来运行,但代价是内存减半;不过,结合新生代“98%对象朝生夕死”的特性,现代虚拟机巧妙调整了Eden与Survivor区的比例,将浪费降至10%。 针对老年代对象存活率高、无法浪费空间的场景,“标记-整理”算法则另辟蹊径:标记后让所有存活对象向一端移动,从而整理出连续内存空间。最后,文章点明了当今主流的做法——“分代收集”,它并非新算法,而是根据新生代与老年代的不同特点(对象存活率、空间担保需求等),灵活组合采用上述策略,以达到整体最优的回收效果。整篇文章对比清晰,从算法原理到工程实现,为理解JVM内存管理提供了扎实的脉络。