GC如何判断对象可以被回收?
下文笔者讲述GC界定对象是否可以回收的方法分享
GC界定对象有以下两种方法: 1.引用计数法 2.可达性分析法
引用计数法
为每个对象添加引用计数器 引用为0时判定可以回收 会有两个对象相互引用无法回收的问题
可达性分析法
从GCRoot开始往下搜索 搜索过的路径称为引用链 若一个对象GCRoot没有任何的引用链 则判定可以回收
GCRoot包含信息
虚拟机栈中引用的对象 方法区中静态变量引用的对象 本地方法栈中引用的对象
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。