标签:常量 图片 splay www height width 入口 方法区 需要
引用计数器算法:为对象放置一个引用计数器,当对象被引用时则计数器加一,如果一个对象的计数器标识为零的时候,则表明该对象可被回收。这种方法比较简单,但无法解决对象之间互相引用的情况。
GC Roots算法:该方法可以解决上面算法中的对象互相引用无法判断可回收状态的问题。顾名思义,GC Root指的是程序使用对象,总会有一个“入口”,这里可以是栈里的本地变量引用,也可以是方法区中的类静态属性引用、常量引用、JNI的Java引用。当一个对象,如果所有的GC Root沿着对象引用链都到不了,这证明该对象到GC Roots不可达,即该对象没有使用的“入口”,自然是可回收的。
如图1,当root3=null的时候,Object5、6、7便到所有root不可达,即使Object6和Object7是互相引用的关系也可以判断为可回收状态。如果想回收Object2,则需要该对象到root1 和 root2的引用链都断了才能回收。
标签:常量 图片 splay www height width 入口 方法区 需要
原文地址:https://www.cnblogs.com/guanjianzhuo/p/8948350.html