文章 > java基础 > java垃圾回收有哪些算法

java垃圾回收有哪些算法

头像

小妮浅浅

2021-03-23 15:56:24593浏览 · 0收藏 · 0评论

1、标记清除算法

标记-清除算法分为两个阶段:标记阶段和清除阶段。标记阶段的任务是标记出所有需要被回收的对象,清除阶段就是回收被标记的对象所占用的空间。

2、复制算法

复制算法将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将还存活着的对象复制到另外一块上面,然后再把已使用的内存空间一次清理掉,这样一来就不容易出现内存碎片的问题。

3、标记整理算法

该算法标记阶段和Mark-Sweep一样,但是在完成标记之后,它不是直接清理可回收对象,而是将存活对象都向一端移动,然后清理掉端边界以外的内存。

4、分代回收算法

分代回收算法根据Java的语言特性,将复制算法和标记整理算法的的特点相结合,针对不同的内存情景使用不同的回收算法。

以上就是java垃圾回收的算法介绍,希望对大家有所帮助。更多Java学习指路:Java基础

关注公众号

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图 底部广告图按钮