GC(Garbage Collection)就是JVM中自动内存管理机制的具体实现。GC包括两大功能:内存的分配,垃圾的回收。内存的分配上一文章中已经介绍过,因为对象生命周期的差异性,故采使用分代垃圾回收策略。
那么如何评价一款GC的性能优劣呢???主要有如下的几个标准
在GC进行垃圾回收时,首先要判断什么是垃圾对象?当一个对象再没有引用引用它时就可以被标记为垃圾对象。主要的垃圾标记算法有两种:引用计数法,根搜索法。
由于引用计数法无法解决垃圾对象之间互相引用时的问题,所以推荐使用根搜索法。根搜索算法就是以根对象集合为起始点,从上往下的方式搜索被根集合对象所连接的对象是否可达(使用根搜索法后,存活的对象就会被直接或者间接的连接到根对象集合上)。如果对象不可达,就标记为死亡。
原文:https://www.cnblogs.com/xbfchder/p/11397469.html