面试重点CMS/G1
垃圾收集算法
分代收集理论
标记-复制算法
每次只用一半的内存空间, 如果这一块内存空间用完了, 就吧这块内存空间上还存活的对象移动到另一半空间, 而这一半空间直接一次性清除掉
空间换时间
标记-清除算法
标记和清除分开阶段
标记完成后同一回收
- 效率问题(如果标记的对象太多, 效率不高)
- 空间问题(不连续的碎片
标记-整理算法
就是标记-清楚算法的优化版, 回收的时候让存活的对象有序移动



垃圾收集器
Serial 收集器
- SWT
- 新生代采用复制算法, 老年代采用标记-整理法
Parallel Scavege收集器(JDK 8 默认)
- 就是serial收集器的并行版本
- STW时间比较长
- 内存比较小还行, 不适合大内存