zoukankan      html  css  js  c++  java
  • Java 垃圾回收之老年代垃圾回收器

    Serval Old收集器(-XX:+UseSerialOldGC, 标记-整理算法)

    单线程收集,进行垃圾收集时,必须暂停所有工作线程

    简单高效,Client模式下默认的老年代收集器

    Parallel Old收集器(-XX:+UseParallelOldGC, 标记-整理算法)JDK 6后提供

    多线程,吞吐量优先

    CMS收集器(-XX:+UseConcMarkSweepGC,  标记-清除算法)

    分为以下阶段

    初始标记:stop-the-world

    并发标记: 并发追溯标记,程序不会停顿

    并发预清理: 查找执行并发标记阶段从年轻代晋升到老年代的对象

    重新标记: 暂停虚拟机,扫码CMS堆中的剩余对象

    并发清理: 清理垃圾对象,程序不会停顿

    并发重置:重置CMS收集器的数据结构

    这六个步骤中,初始标记和重新标记,会有短暂的stop-the-world

    G1收集器(-XX:+UseG1GC, 复制+标记-整理算法)(年轻代和老年代都能用)

    Garbage First 收集器的特点

    并发和并行

    分代收集

    空间整合

    可预测的停顿

    将整个Java堆内存划分为多个大小相等的Region

    年轻代和老年代不再物理隔离

  • 相关阅读:
    【iOS】去掉Tabbar顶部线条
    iOS中控制器的释放问题
    码云平台帮助文档_V1.2
    iOS键盘 样式/风格
    cocoapods的安装 升级版
    Unity异常捕获
    tomcat和jdk的安装配置
    Unity读取Excel表格
    NFS
    K8S存储相关yaml
  • 原文地址:https://www.cnblogs.com/linlf03/p/12180856.html
Copyright © 2011-2022 走看看