zoukankan      html  css  js  c++  java
  • JVM的常见的垃圾收集器

    1.SerialSerial + Serial Old:最古老的垃圾收集器,Serial”体现在其收集工作是单线程的, 在进行垃圾收集过程中,会进入臭名昭著的Stop-The-World”状态,一直是 Client 模式下 JVM 的默认选项。针对新生代采用复制算法(-XX:+UseSerialGC

    2.Serial Old:作用于老年代,采用了标记 - 整理(Mark-Compact)算法,与Serial配合使用。

    3.ParNew:新生代 GC 实现,Serial GC 的多线程版本,最常见的应用场景是配合老年代的 CMS GC 工作出发点在于加速资源回收的速度,以减少应用的STW时间;高响应速度XX:+UseParNewGC ParNew+cms+serialold

    4.Parallel Scavenge: 新生代的多线程收集器(并行收集器) 其采用的是Copying算法,是 server 模式 JVM 的默认 GC 选择出发点在于资源回收的吞吐量高吞吐量-XX:+UseParallelGC  Parallel Scavenge + Parallel Old

    5.Parallel Old:并行运行;作用于老年代;标记-整理算法;吞吐量优先;适用于后台运算而不需要太多交互的场景。

    6.CMS:基于标记 - 清除(Mark-Sweep)算法,设计目标是尽量减少停顿时间,采用的标记 - 清除算法,存在着内存碎片化问题,所以难以避免在长时间运行等情况下发生 full GC-XX:+UseConcMarkSweepGC,在 JDK 9 中被标记为废弃(deprecated

    7.G1垃圾收集器:  见另一篇笔记

  • 相关阅读:
    mysql-centos7部署mysql5.7.20
    tips-history添加命令的执行时间
    Maven核心概述
    Java动态代理
    JDBC(3)-数据库事务
    JDBC(2)-操作BLOB类型字段和批量插入
    redis+mysql读写方案
    Redis与Memcache区别最全整理【摘自百度】
    redis+mysql有几种用法?【摘录知乎】
    js 拷贝到剪贴板
  • 原文地址:https://www.cnblogs.com/wl889490/p/12770592.html
Copyright © 2011-2022 走看看