根据《深入理解java虚拟机》一书所作的笔记和图。
绘图不易,转载请注明出处
引用计数法的缺陷
- 可能存在循环引用, 例如A = B 和B =A , 实际上已经没有再使用他们这2个了,但是依然不会被认为已死
可达性分析算法:
给定1个GC ROOT对象, 然后判断某个对象能否到达gcRoot这个顶点 ,达不到则认为时可回收。
GC ROOT对象: 虚拟机栈引用的对象、 类静态属性引用
方法区的回收
4种垃圾收集的方法
垃圾收集的运行流程
多种垃圾收集器的演变图
对象在新生代和老生代的之前的转移流程,以及各区直接的关系