判定对象是否存活

一.引用计数算法(淘汰)

     给对象中添加一个引用计数器,每当有一个地方引用它时,计数值加1,引用失效时,计数值减1,任何时刻计数器为0时对象就不可能再被使用。

      无法解决对象之间相互循环引用问题。

二.可达性分析

    当一个对象到GC ROOTS 没有任何引用链相连接,则证明此对象不可用。

     可作为GCroots的对象包括以下几种:

    1.虚拟机栈中引用对象。

    2.方法区中类静态属性引用对象。

     3.方法区中常量应用的对象。

     4.Native方法引用对象。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页