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