3. 如何判断对象己死
在堆里面存放着 Java 世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前,第
一件事情就是要确定这些对象之中哪些还“存活”着,哪些已经“死去”(即不可能再被任何途
径使用的对象)。
3.1 引用计数算法
给对象中添加一个引用计数器,每当有一个地方 引用它时,计数器值就加 1;当引用失效
时,计数器值就减 1;当引计数器为 0 时,对象会被回收。
优点:实现简单,效率高;
缺点:无法处理现循环引用的情况,需要额外的空间来存储计数器,以及繁琐的更新操作。
注意:由于引用计数算法不能解决循环引用带来的问题,JVM 中并没有使用引用计数算法
来作为 GC 中判断对象是否存活(回收)的算法。
评论0
最新资源