码迷,mamicode.com
首页 > 编程语言 > 详细

垃圾回收算法

时间:2020-05-14 15:07:30      阅读:56      评论:0      收藏:0      [点我收藏+]

标签:sans   wrap   lin   pre   清除   letter   mic   移动   新生代   

1:复制算法
    将内存平均分为两份:A和B。当A部分内存使用完了,将A部分内存中还在使用的对象copy到B部分内存中,然后清空A部分内存。以此类推...    这种算法缺点是内存利用率只用50%;

2:标记-清除算法
    先标记所有要回收的对象,然后在清除所有标记好的对象;这种算法的缺点是会有大量的不连续内存碎片。

3:标记-整理算法
    该算法可以看成是标记-清除算法的优化,避免了大量不连续内存碎片问题。
    将可用对象同时往一边移动,以该内存界限(可用对象)为标准,清空以外的内存。

4:分代算法    
    分代算法其实是一种思想,也是多中垃圾回收算法的组合。
    分代算法分为新生代和老年代;在新生代中由于有大量对象需要回收,所以使用复制算法;在老年代中由于对象存活时间较长,使用标记-清除或者标记-整理算法。

垃圾回收算法

标签:sans   wrap   lin   pre   清除   letter   mic   移动   新生代   

原文地址:https://www.cnblogs.com/xm970829/p/12888518.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!