JVM(HotSpot):GC之垃圾回收器的分类

文章目录

前言

上一篇,我们学习了分代回收机制

它的主要内容是对JVM内存的一个划分,以及垃圾回收器工作时,区域运作顺序的一个规定。

所以,它是一个规范。

这一篇,来学习具体的垃圾回收器的类别。

一、串行

特点:单线程,堆内存较小,适合个人电脑

相关实现:Serial GC(年轻代)+ Serial Old GC(老年代)

二、吞吐量优先

特点:多线程,堆内存较大,多核 cpu

说明:就是单次回收的垃圾对象较多。

相关实现:Parallel GC (年轻代)+ Parallel Old GC(老年代)

三、响应时间优先

特点:多线程,堆内存较大,多核 cpu

说明:单次回收所耗费的时间较少,这样,stw时间就短,用户线程就可以继续工作。

相关实现:CMS GC(老年代)+ ParNew GC(年轻代)

四、常见垃圾回收器使用组合

最终被G1取代。

还有一种ZGC
这两种垃圾回收器,对JVM内存空间的划分又了新的规划。但是,依然保留了分代回收的基本思想。

参考:
1、各种Java垃圾回收器详细介绍
2、ZGC详解

相关推荐
wear工程师18 小时前
Java 类初始化到底何时触发?别把加载、连接和 static 执行混在一起
java·jvm
程序员雷欧19 小时前
线上频繁触发各种 GC 的原因排查与处理指南
java·jvm·算法
wuminyu1 天前
JVM利用io_uring优化堆外内存性能原理剖析
java·linux·c语言·jvm·c++
147API3 天前
Python批量生成蒸馏数据,并发、重试、幂等和断点续跑
开发语言·jvm·python
wuminyu3 天前
JDK21解决虚拟线程IO阻塞原理剖析
java·linux·c语言·jvm·c++
sunywz3 天前
【JVM】(8)JVM调优实战及常量池详解
jvm
wuminyu4 天前
虚拟线程底层ForkJoinPool的工作窃取算法机制
java·linux·c语言·jvm·c++
leisoo80974 天前
股票数据本地化存储实战:JSON、数据库与列式存储的方案对比
jvm·数据库·json
SamChan904 天前
PDF翻译中的并发控制:用Semaphore防止API限流与资源耗尽
java·jvm·pdf
snow@li4 天前
Java:跨平台原理与JDK、JRE、JVM全景深度解析
java·开发语言·jvm