今日总结
CMS垃圾回收器设计目的:为了避免「老年代 GC」出现「长时间」的卡顿(Stop The Word)
CMS垃圾回收器回收过程:初始标记、并发标记、并发预处理、重新标记和并发清除。初始标记以及重新标记这两个阶段会Stop The Word
CMS垃圾回收器的弊端:会产生内存碎片&&需要空间预留:停顿时间是不可预知的
《对线面试官》系列目前已经连载30篇啦,这是一个讲人话面试系列
- 【对线面试官】Java注解
- 【对线面试官】Java泛型
- 【对线面试官】 Java NIO
- 【对线面试官】Java反射 && 动态代理
- 【对线面试官】多线程基础
- 【对线面试官】 CAS
- 【对线面试官】synchronized
- 【对线面试官】AQS&&ReentrantLock
- 【对线面试官】线程池
- 【对线面试官】ThreadLocal
- 【对线面试官】CountDownLatch和CyclicBarrier
- 【对线面试官】为什么需要Java内存模型?
- 【对线面试官】深入浅出 Java 内存模型
- 【对线面试官】Java从编译到执行,发生了什么?
- 【对线面试官】双亲委派机制
- 【对线面试官】JVM内存结构
- 【对线面试官】垃圾回收机制
- 【对线面试官】CMS垃圾回收器
- 【对线面试官】List
- 【对线面试官】Map
- 【对线面试官】SpringMVC
- 【对线面试官】Spring基础
- 【对线面试官】SpringBean生命周期
- 【对线面试官】Redis基础
- 【对线面试官】Redis持久化
- 【对线面试官】Kafka基础
- 【对线面试官】使用Kafka会考虑什么问题?
- 【对线面试官】MySQL索引
- 【对线面试官】MySQL 事务&&锁机制&&MVCC
- 【对线面试官】MySQL调优
参考资料:
- https://zhuanlan.zhihu.com/p/248709769 JVM基础(五)垃圾收集器
- https://kaiwu.lagou.com/course/courseInfo.htm?courseId=31#/detail/pc?id=1544 第06讲:深入剖析:垃圾回收你真的了解吗?(下)
- 《深入Java虚拟机》
- https://www.cnblogs.com/hongdada/p/12016020.html JVM-卡表(Card Table)
- https://www.cnblogs.com/littleLord/p/5380624.html 详解CMS垃圾回收机制
- https://www.cnblogs.com/Courage129/p/14385571.html JVM垃圾回收之三色标记
- https://zhuanlan.zhihu.com/p/52182397 图解 CMS 垃圾回收机制,你值得拥有