美文网首页
GC收集器

GC收集器

作者: 正在偷人 | 来源:发表于2019-03-15 16:05 被阅读0次

Serial收集器

单线程收集器,收集时会 stop the word。新生代收集用复制算法,老年代采用标记整理算法。能与CMS收集器配合使用。

ParNew收集器

Serial的多线程版本,算法策略和Serial一样。能与CMS收集器配合使用。

Parallel Scavenge(并行回收)收集器

新生代收集器,采用复制算法,多线程收集器,能设置停顿时间和吞吐量大小。

SerialOld收集器

Serial收集器的老年代版本,单线程,标记整理算法。

ParallelOld收集器

Parallel Scavenge收集器的老年代版本,多线程,标记整理算法。

CMS收集器

目的是GC停顿时间最短,采用标记清楚算法,只能回收老年代,预处理收集器,不能等老年代用完再回收,要设置阈值,提前回收。CMS会产生内存碎片,分为四个步骤:

  • 初始标记,会stw,标记存活对象,从老年代GC-ROOTS找和年轻代引用这老年代对象的对象。
  • 并发标记:从初始标记的对象中找出存活的对象,并发执行不会stw。
  • 重新标记:会stw,标记整个堆(年轻代+老年代)存活的对象。年轻代的对象引用着老年代的对象也会认为老年代对象存活。可设置在重新标记前mingc,减少年轻代引用老年代对象。
  • 并发清除:清楚对象,回收内存。不会stw,所以会产生浮动垃圾,下次可清除。

G1收集器

年轻代、老年代不再占用连续空间,G1将整个内存划分为许多区域(region),每一代都占多个region,采用复制算法,不会产生内存碎片

相关文章

  • Throughput收集器

    理解Throughput收集器 Throughput收集器在Minor GC或者Full GC时,应用线程都会暂停...

  • Java垃圾收集器的一些总结

    GC 1 常见的GC收集器 分代收集阶段 一.新生代收集器 1 Serial New jdk1.5默认收集器 基于...

  • 读书笔记---gc收集器

    GC垃圾收集器整理 收集器种类有下面几种: serial / serial old 收集器 parnew收集器 ...

  • HotSpot JVM GC收集器学习总结

    HotSpot JVM中GC收集器学习总结:分代回收 + 收集算法 1. GC收集器(Overview) 2. C...

  • JVM垃圾收集器

    垃圾收集器的理论依据是垃圾回收算法,这里是指堆内存的垃圾收集器。 垃圾收集器的两大指标: GC时间:GC时会暂停其...

  • java性能优化

    压测工具 基准性能数据 方面 代码算法 JVM gc算法 gc收集器

  • JVM-GC日志分析

    全量GC日志 分段分析(一) GC发生时间 GC 或 Full GC 表示垃圾收集器停顿类型,新生代GC还是老年代...

  • 【JAVA提升】- GC算法及垃圾回收器

    GC算法及收集器 1 GC的概念 垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于19...

  • JVM-GC(2)

    JVM-GC(2) 垃圾收集器 CMS收集器 CMS收集器是一种以获取最短回收停顿时间为目标的收集器。CMS收集器...

  • 深入理解java虚拟机读书笔记-垃圾收集器

    GC收集器搭配图: 1.serial收集器:单线程收集器,运行时stw,client模式下默认新生代收集器(简单而...

网友评论

      本文标题:GC收集器

      本文链接:https://www.haomeiwen.com/subject/vhclmqtx.html