JVM、(三)垃圾回收机制
一、如何判断对象可以回收
1. 引用计数法
每引用一次,就计数一次,当某个对象的引用计数为0时进行回收。
弊端:循环引用的两个对象永远得不到回收。
2. 可达性分析算法
扫描堆中的对象,看能否沿着 GC Root
对象为起点的引用链找到该对象,找不到表示可以回收。
3. 四种引用
- 强引用
- 软引用
- 弱引用
- 虚引用
- 终结器引用
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 iStitches!
1. 引用计数法
每引用一次,就计数一次,当某个对象的引用计数为0时进行回收。
弊端:循环引用的两个对象永远得不到回收。
2. 可达性分析算法
扫描堆中的对象,看能否沿着 GC Root
对象为起点的引用链找到该对象,找不到表示可以回收。
3. 四种引用