垃圾回收的相关算法
一、标记阶段:引用计数算法
1.1 对象是否存活
1.2 引用计数算法
- python使用的引用计数算法,java并没有使用
二、标记阶段:可达性分析算法
2.1 介绍
2.2 GC Roots
三、对象的finalizationg机制
3.2 对象的三种状态
四、MAT与JProfiler的GC Roots溯源
4.1 MAT介绍
- MAT是Memory Analyzer 的简称,它是一款功能强大的java堆内存分析器。用于查找内存泄露以及查看内存消耗情况
- MAT是基于eclipse开发的,是一款免费的性能分析工具
- 可以在www.eclipse.org/mat/
五、清除阶段:标记-清除算法
5.1 垃圾清除阶段
5.2 执行过程
5.3 优缺点
六、清除阶段:复制算法
6.1 核心思想
6.2 优缺点
6.3 应用场景
七、清除阶段:标记-压缩算法
7.1背景
7.2 执行
7.3 优缺点
7.4 对比三种算法
八、小结
没有最优的算法,只有不同场景下最适合的算法。
九、分代收集算法
9.1 介绍