当前位置:   article > 正文

JVM垃圾回收--垃圾回收器--CMS和G1的区别和执行流程_g1 和cms 卡表的区别

g1 和cms 卡表的区别

原文网址:JVM垃圾回收--垃圾回收器--CMS和G1的区别和执行流程_IT利刃出鞘的博客-CSDN博客

简介

本文介绍CMS和G1的垃圾回收流程以及他们的区别。

CMS与G1的区别

CMS(Concurrent Mark Sweep

G1(Garbage-First

目的

减少回收停顿时间(牺牲吞吐量)。

减少长停顿的次数、增加吞吐量。

为了替代CMS(JDK11默认使用G1)。

回收的代

回收老年代

回收新生代和老年代

算法

标记-清除

从整体来看是“标记-整理”算法;

从局部上来看“复制”算法

内存碎片

会产生内存碎片

不会产生内存碎片

过程

初始标记=> 并发标记=> 重新标记=> 并发清理

初始标记=> 并发标记=> 重新标记=> 并行清理

使用场景

服务器资源较少(处理器少、内存小)。

服务器资源较多(多核处理器、大内存。)
想消除长时间的GC停顿(超过0.5-1秒的停顿)。

CMS 在小内存应用上的表现要优于 G1,而大内存应用上 G1 更有优势,大小内存的界限是6GB到8GB。

CMS垃圾回收器

流程

说明

CMS是老年代并发GC算法:(ConcurrentMark-SweepGC、CMS GC)。

算法总体逻辑:标记-清除(Mark-Sweep)

上边是文章的部分内容,为便于维护,全文已迁移到此网址:JVM—CMS和G1垃圾回收器的区别和执行流程 - 自学精灵

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/561973
推荐阅读
相关标签
  

闽ICP备14008679号