• JVM基础_10_各种垃圾回收器


    垃圾回收器的性能指标

    主要是通过吞吐量,暂停时间和内存占用三大指标。

    • 吞吐量:运行用户代码的时间占总运行时间的比例:吞吐量=用户代码运行时间/(用户代码运行时间+垃圾收集时间)
    • 暂停时间:执行垃圾回收时,用户线程被暂停的时间
    • 内存占用:Java堆区所占内存的大小

    七款垃圾处理器

    串行处理器:Serial,Serial Old
    并行回收器:ParNew,Parallel Scavenge,Parallel Old
    并发回收器:CMS,G1
    
    • 1
    • 2
    • 3
    新生代收集器:Serial,ParNew,Parallel Scavenge
    老年代收集器:Serial Old,Parallel Old,CMS
    整堆收集器:G1
    
    • 1
    • 2
    • 3

    Serial收集器

    Serial是一种串行运行的,执行新生代收集的收集器。采用的是复制算法。
    Serail Old收集器是串行运行的,运行老年代收集的收集器。采用的是标记-整理算法。

    在这里插入图片描述
    当Serial/Serial Old收集器运行时,其他用户线程必须要暂停,用户线程和GC线程无法并发运行。

    ParNew回收器

    ParNew是Serial收集器的多线程版本,采用并行回收的方式执行新生代的内存回收。
    在这里插入图片描述

    Parallel Old回收器

    Parallel Old是基于并行回收的处理老年代垃圾的垃圾回收器,采用的是标记整理算法。
    在这里插入图片描述

    Parallel Scavenge回收器

    Parallel Scavenge回收器采用的是并行回收,复制算法的机制,被称之为吞吐量优先的垃圾回收器。
    高吞吐量可以高效率的利用CPU时间,尽快完成程序运算任务,主要适合在后台运算而不太需要交互的任务。
    在这里插入图片描述
    Java8中,默认是此收集器。

    CMS回收器

    是第一款真正意义上的并发收集器,第一次实现了让GC线程和用户线程同时工作。它采用的是标记清除算法,负责老年代的GC。

    在这里插入图片描述
    运行期间主要分为四个阶段:

    • 初始标记阶段:所有工作线程暂停,标记出所有GC roots对象能直接关联到的对象,由于这类对象比较少,所以速度很快。
    • 并发标记阶段:从Gc roots直接关联对象开始遍历整个对象图的过程,耗时较长但是不需要停顿用户线程,可以和GC线程并发运行。
    • 重新标记阶段:暂停用户线程,修正并发标记阶段,因为用户线程继续运行导致标记产生变动的一部分对象的标记记录
    • 并发清除阶段:GC线程与用户线程并发执行,清除掉所有被判定为死亡的对象。

    CMS的优点和缺点

    优点:1.并发收集 2. 低延迟
    缺点:1.由于采用标记清除算法,所以会产生内存碎片 2.低吞吐量 3.无法处理并发标记阶段新产生的垃圾对象,无法及时回收这些垃圾对象

    G1回收器

    G1是一个并行回收器,将堆内存分割为很多区域Region,跟踪每一个Region里面堆积的垃圾的价值大小(根据回收所获得空间大小以及回收所需时间的经验值),在后台维护一个优先列表,根据所允许的收集时间,优先回收价值最大的Region。

    G1优点

    优点:1并发运行 2.分代收集
    在这里插入图片描述

    垃圾回收器总结

    在这里插入图片描述

  • 相关阅读:
    数据分析 — Pandas 数据加载、存储和清洗
    坚持自主创新 线控底盘领军企业英创汇智获数亿元B+轮融资
    数据集 | 基于计算机视觉的医学影像处理数据集
    面试常谈的Binder理解,每个人都不一样~
    设计高并发系统的关键策略
    一文掌握 Java8 Stream 中 Collectors 的 24 个操作
    2018-2019 ACM-ICPC, Asia Nanjing Regional Contest G. Pyramid(组合数学 计数)
    .Net-C#文件上传的常用几种方式
    树莓派 Qt中 QCameraInfo 无法使用
    Part2_扩展MATSIM_Subpart4_除个人车外的其他模式_第19章 新的基于动态事件的公共交通路由器&第20章 基于矩阵的PT路由器
  • 原文地址:https://blog.csdn.net/weixin_43962203/article/details/126833807