栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JVM垃圾回收算法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JVM垃圾回收算法

1.标记-清除算法
标记:遍历所有的GC Roots 然后将所有可达对象标记为存活对象;
清除:遍历堆中的所有对象,然后将没有标记的对象清除。
2.标记整理算法
标记:遍历所有的GC Roots 然后将所有可达对象标记为存活对象;
整理:移动所有存活的对象,且按照内存地址次序依次排列,然后将末端内存地址以后的内存全部回收。
3.复制算法
将原有的内存空间一分为二,每次只用其中的一块,在垃圾回收时,将正在使用的对象复制到另外一个内存空间中,然后将该内存空间清空,交换两个内存的角色,完成垃圾回收。
4.分代算法
年轻代-老年代-元数据区(之前永久代)
1个Eden区和2个Survivor区(分别叫from和to)默认比例为8:1:1,一般情况下,新创建的对象都会被分配到Eden区(一些大对象特殊处理),这些对象经过第一次GC后,如果仍然存活,将会被移到Survivor区。在Survivor区中每熬过一次Minor GC,年龄就会增加1岁,当它的年龄增加到16时,就会被移动到老年代中。
 年轻代:复制算法
老年代: 标记整理算法

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/299402.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号