美文网首页
4.垃圾回收器CMS的神话故事

4.垃圾回收器CMS的神话故事

作者: 想做安徒生 | 来源:发表于2018-05-19 19:49 被阅读0次

CMS收集器(并发)基于“标记-清除”算法实现的。结合参数设置GC后进行碎片整理。
世界众生由造物主主宰,造物主委派元老维护世界和平,合法生物盘点,不合法
一切生物都将由造物主进行消灭。每一次生物盘点都将遵循以下六个阶段。

6个阶段:
(1)世界静止,造物主授权元老——找出GCRoots,进行标记
(2)元老们一起顺藤摸瓜抓坏人———顺着root节点进行递归遍历标记
(3)元老们找出哪些在摸瓜过程中变坏/变好的人-----在并发标记期间,标记从新生代晋升的对象、新分配到老年代的对象以及在并发阶段被修改了的对象。
(4)世界静止,造物主出手生物界进行重新排查-----重标记(STW) 暂停所有用户线程,重新扫描堆中的对象,进行可达性分析,标记活着的对象。
(5)造物主枪毙变坏的生物-------并发清理,用户线程被重新激活,同时清理那些无效的对象。
(6)打扫断头台- ------重置。 CMS清除内部状态,为下次回收做准备。

问题1:并发清理阶段用户线程还在运行,这段时间就可能产生新的垃圾怎么办?
新的垃圾在此次GC无法清除,只能等到下次清理。这些垃圾有个专业名词:浮动垃圾。
问题2:并发清理阶段用户线程还在运行可不可能已经被标记死亡的又活过来?
并发用户线程操作中会插入写入屏障,利用三色标记法将这部分对象标为灰色。

相关文章

  • 垃圾回收

    如何查看当前JVM使用的垃圾回收器? 如何指定使用CMS回收? 如何打印回收日志? 垃圾回收过程 CMS垃圾回收的...

  • 4.垃圾回收器CMS的神话故事

    CMS收集器(并发)基于“标记-清除”算法实现的。结合参数设置GC后进行碎片整理。世界众生由造物主主宰,造物主委派...

  • JVM垃圾回收器之CMS回收过程及优缺点

    JVM垃圾回收器之CMS回收过程及优缺点 今天给大家介绍一下CMS垃圾回收器。首先CMS是一款多线程+分段操作的一...

  • CMS垃圾收集器

    一、新生代垃圾回收器的比较: 二、老年代垃圾回收器的比较: 四、CMS的特性 1、CMS只会回收老年代和永久代的垃...

  • 最新鲜的美团现场面试41题(三面技术+HR面):Redis+Ka

    ​ 一面 hashmap与concurrenthashmap的区别 垃圾回收算法以及垃圾回收器 CMS的回收步骤 ...

  • 25. java虚拟机总结-垃圾回收器 (八)

    CMS 垃圾回收器 CMS 的全称是 Mostly Concurrent Mark and Sweep Garba...

  • java CMS垃圾回收日志

    文章目录一、CMS垃圾回收器介绍二、CMS JVM运行参数三、CMS收集器运行过程1、初始标记(CMS initi...

  • jvm

    垃圾回收: 回收算法、收集器 GC ROOTS寻根,可达性分析 CMS:标记-回收,cpu、浮动垃圾、内存碎片。初...

  • G1垃圾回收器详解

    在前一篇的文章《HotSpot垃圾回收算法概述》里面,对于Serial, Parallel和CMS几种垃圾回收器做...

  • CMS垃圾收集器——重新标记的讨论

    《深入理解java虚拟机 第二版 JVM高级特性与最佳实践》里面提到CMS垃圾收集器。 CMS垃圾收集器的垃圾回收...

网友评论

      本文标题:4.垃圾回收器CMS的神话故事

      本文链接:https://www.haomeiwen.com/subject/ncuadftx.html