【JVM】JVM垃圾收集器

Serial收集器(复制算法)

新生代单线程收集器,标记和清理都是单线程,有点事简单高效,是client级别默认的GC方式

Serial Old收集器(标记整理算法)

老年代单线程收集器,Serial收集器的老年代版本

ParNew收集器(复制算法)

新生代收集器,可以认为是Serial收集器的多线程版本,在多核CPU环境下有着比Serial更好的表现

Parallel Scavenge收集器(复制算法)

并行收集器,追求高吞吐量,高效利用CPU,吞吐量一般为99%。适合后台应用等对交互相应要求不高的场景。是server级别默认采用的GC方式。

吞吐量=用户线程时间/(用户线程时间+GC线程时间)。

Parallel Old收集器(复制算法)

Parallel Scavenge收集器的老年代版本,并行收集器,吞吐量有限

CMS收集器(标记清理算法)

高并发、地停顿,追求最短GC回收停顿时间,cpu占用比较高,响应时间快,停顿时间短,多核cpu追求高响应时间的选择

G1收集器

G1通过在垃圾回收领域应用并行化策略,把几块大内存快变成了几百块小内存回收问题,,并且维护了一个优先级表,在垃圾回收过程中根据系统允许的最长垃圾回收时间,优先回收垃圾多的区域,使得回收算法可以高度并行化,同时也因为分成很多小块,使得垃圾回收的单位变成了小块内存,为不实整代内存,使得用户可能对回收时间进行分配,垃圾回收变得可以预期了

新生代有Serial、ParNew、Parallel Scavenge

老年代有CMS、SerialOld、Parallel Old

还有不区分年龄的G1算法

Jdk默认使用的是哪种垃圾回收器

jdk1.7 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)

jdk1.8 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)

jdk1.9 默认垃圾收集器G1

 

参考文章

G1 垃圾收集器架构和如何做到可预测的停顿(阿里) - aspirant - 博客园

美团9大高频问题和答案! 【后端】_笔经面经_牛客网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值