• 转Serial,Parallel,CMS,G1四大GC收集器特点小结


    转 https://blog.csdn.net/u013812939/article/details/48782343


    1.Serial收集器

    一个单线程的收集器,在进行垃圾收集时候,必须暂停其他所有的工作线程直到它收集结束。
    特点:CPU利用率最高,停顿时间即用户等待时间比较长。
    适用场景:小型应用
    通过JVM参数-XX:+UseSerialGC可以使用串行垃圾回收器。


    2.Parallel收集器

    采用多线程来通过扫描并压缩堆
    特点:停顿时间短,回收效率高,对吞吐量要求高。
    适用场景:大型应用,科学计算,大规模数据采集等。
    通过JVM参数 XX:+USeParNewGC 打开并发标记扫描垃圾回收器。


    3.CMS收集器

    采用“标记-清除”算法实现,使用多线程的算法去扫描堆,对发现未使用的对象进行回收。
    (1)初始标记
    (2)并发标记
    (3)并发预处理
    (4)重新标记
    (5)并发清除
    (6)并发重置
    特点:响应时间优先,减少垃圾收集停顿时间
    适应场景:服务器、电信领域等。
    通过JVM参数 -XX:+UseConcMarkSweepGC设置


    4.G1收集器

    在G1中,堆被划分成 许多个连续的区域(region)。采用G1算法进行回收,吸收了CMS收集器特点。
    特点:支持很大的堆,高吞吐量
    --支持多CPU和垃圾回收线程
    --在主线程暂停的情况下,使用并行收集
    --在主线程运行的情况下,使用并发收集
    实时目标:可配置在N毫秒内最多只占用M毫秒的时间进行垃圾回收
    通过JVM参数 –XX:+UseG1GC 使用G1垃圾回收器

  • 相关阅读:
    ORACLE 如何产生一个随机数
    Oracle数据库一些操作信息
    EXP-00091和IMP-00010报错
    ORACLE数据库 memory_target SGA 大小
    linux如何查看端口被哪个进程占用的方法
    命令信息
    Linux负载均衡软件LVS
    oracle 字段信息
    oracle数据库的启动与关闭
    idea解除版本控制
  • 原文地址:https://www.cnblogs.com/mytzq/p/11120295.html
Copyright © 2020-2023  润新知