• 技术文章 >java >java基础

    java垃圾回收有哪些算法

    小妮浅浅小妮浅浅2021-06-08 09:54:54原创4208

    1、标记清除算法

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

    2、复制算法

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

    3、标记整理算法

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

    4、分代回收算法

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

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

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    专题推荐:java垃圾回收
    上一篇:java中gc判定可回收对象 下一篇:java中SocketChannel是什么

    相关文章推荐

    • Python中的垃圾回收机制是什么• 如何利用Python进行垃圾分类• Python垃圾回收机制是什么• 详解Python垃圾回收机制• 大话Python的垃圾回收机制• java算法面试题• python垃圾回收的机制过程

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网