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详解

相关推荐
m0_631529828 分钟前
CSS如何利用CSS变量进行渐变色管理_提升渐变配置的灵活性
jvm·数据库·python
2301_8180084422 分钟前
数据库模型设计实战:如何正向工程从模型建表_规范化项目开发流程
jvm·数据库·python
Run_Teenage44 分钟前
Linux:线程互斥,线程锁
运维·开发语言·jvm
2401_846339561 小时前
Vue 3 中集成 Three.js 场景的完整实现指南
jvm·数据库·python
Byron__2 小时前
Java JVM核心知识点复习笔记
java·jvm·笔记
2301_775639892 小时前
Golang怎么写TODO待办应用_Golang TODO应用教程【深入】
jvm·数据库·python
iuvtsrt2 小时前
WordPress 分页失效的常见原因与正确实现方案
jvm·数据库·python
2401_871492852 小时前
C#怎么使用泛型 C#泛型类泛型方法和泛型约束的定义和使用方法【语法】
jvm·数据库·python
2301_787312433 小时前
Vue.js中Patch过程处理Teleport组件挂载位置的特殊逻辑
jvm·数据库·python
dfdfadffa3 小时前
Golang Gin怎么做JWT登录认证_Golang Gin JWT教程【实用】
jvm·数据库·python