jvm判断对象是否存活的方法:
引用计数法
给对象添加一个引用计数器,每当有一个地方引用它时,计数器的值就加1,当引用失效时,计数器的值就减1,任何时刻计数器的值是0的时候,该对象就不可能再被使用了。
引用计数器的缺陷:无法解决相互引用的问题。即A和B两个对象相互引用,初次之外,这两个对象没有任何引用。
可达性分析法
主流的商用程序语言的主流实现都是这个,基本思路是:通过各一系列称为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链(Reference Chain),当一个对象到DC Roots没有任何引用链相连接的时候,证明这个对象不可用,可被回收。
364

被折叠的 条评论
为什么被折叠?



