zoukankan      html  css  js  c++  java
  • 【JVM学习之路】垃圾回收器

    CMS回收器

    • 在JDK1.5时期,HotSpot推出了一款在强交互应用中几乎有划时代意义的垃圾收集器:CMS(Concurrent-Mark-Sweep)收集器,这款收集器是HotSpot虚拟机中第一款真正意义上的并发收集器,它第一次实现了让垃圾收集线程与用户线程同时工作
    • CMS收集器的关注点尽可能缩短垃圾收集时用户线程的停顿时间。停顿时间越短(低延迟)就越适合与用户交互的程序,良好的响应速度能提升用户体验。(目前很大一部分的Java引用集中在互联网站或者B/S系统的服务端上,这类应用尤其重视服务的响应速度,希望系统停顿时间最短,以给用户带来较好的体验。CMS收集器就非常符合这类应用的需求。)
    • CMS的垃圾收集算法采用标记-清除算法,并且也会“Stop-the-world”

    不幸的是,CMS作为老年代的收集器,却无法与JDK1.4.0中已存在的新生代收集器Parallel Scavenge配合工作,所以在JDK1.5中使用CMS来收集老年代的时候,新生代智能选择ParNew或者Serial收集器中的一个。
    在G1出现之前,CMS使用还是非常广泛的。一直到今天,仍然有很多西戎使用CMS GC。

    CMS工作原理


    CMS整个过程比之前的收集器要复杂,整个过程分为4个主要阶段,即初始标记阶段、并发标记阶段、重新标记阶段和并发清除阶段。

  • 相关阅读:
    jquery select取值,赋值操作
    数据库性能监测工具
    Redis集群搭建与简单使用
    Docker安装指南
    yum常用操作
    centos6.8 安装Python2.7后, yum出现“No module named yum”错误
    Docker使用阿里云docker镜像加速
    高并发缓存架构
    mysql主从复制-方案1
    redis队列操作
  • 原文地址:https://www.cnblogs.com/tangliping/p/14656203.html
Copyright © 2011-2022 走看看