2016 - 2024

感恩一路有你

jvm回收机制的三大算法 JVM针对年轻代和老年代的GC算法有什么区别?

浏览量:2345 时间:2021-03-11 19:58:06 作者:admin

JVM针对年轻代和老年代的GC算法有什么区别?

根据对象的生命周期,分代收集算法将内存分为新一代和旧一代,并根据各自的特点选择合适的垃圾收集算法。

对于新一代,大多数对象的生存时间非常短,每次只有少量对象存活。您可以选择复制算法,只需复制少量对象即可完成收集。对于旧一代,对象的生存时间较长,因此可以选择标记清除算法或标记整理算法。代收算法是商业虚拟机的主要恢复算法。

创建新对象通常在新一代中分配,而占用大量连续内存的字符串和大型数组则在旧一代中分配。这是为了避免在回收旧一代时复制太多内存,降低效率。

虚拟机为每个对象定义一个年龄计数器。第一次创建对象时,它将直接分配给新一代。每次垃圾回收后,年龄都会增加一岁,当年龄达到临界值时,就会移到老年。

jvm回收机制的三大算法 jdbc连接数据库步骤 jvm垃圾回收机制算法

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。