参考计数算法在对象中添加了一个参考计数器。每当有一个地点参考时,添加了计数器值;当引用无效时,计数器值会降低一个;尽管参考计数(参考计数),尽管它占用了一些额外的记忆空间以进行计数,但其原理很简单,并且确定效率也很高。在大多数情况下,这是一种很好的算法。
还有一些众所周知的应用程序案例。但是,在Java领域,至少没有选择主流Java虚拟机来使用参考计数算法来管理内存。主要原因是这种看似简单的算法有许多例外要考虑。必须考虑必须考虑到它。在大量的额外处理中以确保正确,例如简单的参考计数很难解决对象之间募集相互参考的问题。
KAIDA分析的基本思想是从一系列称为“ GC根”作为起始节点集的根对象开始。从这些节点开始,在参考关系下搜索,如果某个对象与GC根之间的任何参考链连接,则搜索过程称为“参考链”(参考链),或者在图中连接,证明该对象不能从GC根到该对象使用。
可以用作GC根的对象包括以下内容: