摘要: 分代收集算法: 阅读全文
posted @ 2019-03-15 16:10 一天学点 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 如果存活对象比例较高时,使用复制算法将降低效率,并且需要担保空间和使用对于内存,再有极端情况下100%存活,所以老年代不适合使用复制算法进行GC 标记整理算法类似于标记清除算法,不同之处在于: 如图(图片来自网络): 阅读全文
posted @ 2019-03-15 16:00 一天学点 阅读(575) 评论(0) 推荐(0) 编辑
摘要: 复制算法:将内存分为大小相等的两块,例如:A区 B区,程序运行时所需要的内存存放在A区,当A区内存空间不足以存放接下来对象所需分配的内存时,将进行GC操作(将A区存货的对象复制到B区,接下来清理A区所有对象) 如图(图片来自网络): 优点: 缺点: 优化: 通常情况下新生代中对象的存活率大概是2%( 阅读全文
posted @ 2019-03-15 15:48 一天学点 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 标记清除算法是GC算法之一,也是GC算法中的基础算法。 标记清除算法通过两步骤进行GC: 如图(图片来自网络): 缺点: 阅读全文
posted @ 2019-03-15 15:22 一天学点 阅读(420) 评论(0) 推荐(0) 编辑
摘要: java中判断一个对象是否需要回收使用的是可达性分析算法! 可达性分析算法:通过一些被称为GC Roots的对象做为起点,从这些对象向下所搜。搜索过程中走过的所有路径被称为引用链,对象没有引用链与GC Root对象相连,则被认为是不可用对象。 如图(图片来自网络): 可当做GC Roots的对象: 阅读全文
posted @ 2019-03-15 15:03 一天学点 阅读(376) 评论(0) 推荐(0) 编辑