CMS垃圾回收器的工作流程

简介: CMS垃圾回收器的工作流程

CMS垃圾回收器的垃圾收集分为四步:

初始标记(CMS initial mark):单线程运行,需要Stop The World,标记GC Roots能直达的对象。
并发标记((CMS concurrent mark):无停顿,和用户线程同时运行,从GC Roots直达对象开始遍历整个对象图。
重新标记(CMS remark):多线程运行,需要Stop The World,标记并发标记阶段产生对象。
并发清除(CMS concurrent sweep):无停顿,和用户线程同时运行,清理掉标记阶段标记的死亡的对象。

相关文章
|
7月前
|
算法 Java
jvm性能调优 - 15JVM的老年代垃圾回收器CMS的缺点
jvm性能调优 - 15JVM的老年代垃圾回收器CMS的缺点
129 0
|
7月前
|
消息中间件 算法 Java
jvm性能调优 - 14JVM的老年代垃圾回收器CMS原理
jvm性能调优 - 14JVM的老年代垃圾回收器CMS原理
91 0
|
Java
G1垃圾回收器的工作流程
G1垃圾回收器的工作流程
1860 0
|
算法 Java
21-看懂CMS收集器工作机制
年轻代垃圾回收器机制我们都很清楚了,接下来我们介绍最核心的老年代垃圾回收环节。
133 0
21-看懂CMS收集器工作机制
|
缓存 算法 Java
JVM CMS GC算法解析
JVM CMS GC算法解析
86 0
|
算法 Java UED
深入解析CMS垃圾回收器
在CMS之前的垃圾回收器,要么就是串行垃圾回收方式,要么就是关注系统吞吐量,而 CMS 垃圾回收器的出现,则打破了这个尴尬的局面。
344 0
深入解析CMS垃圾回收器
|
前端开发 Java
Java虚拟机 CMS GC 调优解析
随着 JDK 版本的不断升级,其 GC 策略也随之不停革新,从早期的 1.4 到如今的 11(本文仅讨论在线上环境落地规模较大的版本),其对应的 GC 策略也随之由 Serial、Parallel、CMS 演进至当前的 G1 甚至即将落地的 ZGC 。每一次的调整无不是基于环境的适配性以及业务场景特性,无论如何,只要能够基于特定的操作系统内核、物理内存、JDK版本以及业务特性,达到收益最大化,采用何种实现策略都不为过。当然,还是建议大家以官方的推荐为准,基于自己的业务场景进行不断优化调整,这样才能保证万无一失,使得我们的业务能够健康发展。
178 0
|
算法 数据可视化 Java
细说jvm(六)、垃圾回收器CMS详解
细说jvm(六)、垃圾回收器CMS详解
441 0
|
算法 NoSQL Java
深入理解JVM - CMS收集器
上一篇文章我们讲解分代的基础理论,同时讲解了新生代和老年代各自的算法复制算法和标记整理算法,之后我们总结了新生代进入老年代的条件,在最后我们介绍的引用类型,同时进行了练习的提问和相关的解答。
99 0
|
算法 安全 Java
【JVM性能优化】CMS回收器的Full-GC流程分析以及问题探究
【JVM性能优化】CMS回收器的Full-GC流程分析以及问题探究
808 0
【JVM性能优化】CMS回收器的Full-GC流程分析以及问题探究