JVM(五)——七种垃圾回收器

在 JVM 中,常见的七种垃圾回收器包括:

1、Serial 垃圾回收器(串行回收器)

  • 单线程执行垃圾回收,在进行垃圾回收时,会暂停所有用户线程。
  • 适用于小型应用和单核 CPU 环境。

2、ParNew 垃圾回收器

  • 是 Serial 回收器的多线程版本。
  • 常用于与 CMS 回收器配合使用。

3、Parallel Scavenge 回收器

  • 关注的是吞吐量(运行用户代码的时间 / 总运行时间)。
  • 可以通过参数来调整垃圾回收的时间和频率。

4、Serial Old 回收器

  • 是 Serial 回收器的老年代版本。

5、Parallel Old 回收器

  • 是 Parallel Scavenge 回收器的老年代版本。

6、CMS(Concurrent Mark Sweep)回收器

  • 以获取最短回收停顿时间为目标,是一种并发的垃圾回收器。
  • 分为初始标记、并发标记、重新标记、并发清除四个阶段。

7、G1(Garbage-First)回收器

  • 面向服务端应用,将堆内存划分为多个大小相等的区域。
  • 可以预测停顿时间,并优先回收价值最大的区域。

例如,在一个对响应时间要求较高的 Web 应用中,可能会选择 CMS 或 G1 回收器;而对于后台批量处理任务,更注重吞吐量,可能会选择 Parallel Scavenge 搭配 Parallel Old 回收器。

相关推荐
开开心心就好14 分钟前
本地文件搜索工具,双击Ctrl就能呼出搜索
java·服务器·前端·支持向量机·ffmpeg·音视频·模拟退火算法
独隅19 分钟前
Claude 高效使用指南深度评测
java·开发语言·claude·claude code
ByteCoder.27 分钟前
班前十分钟的清单,按体检引导单来写
java·服务器·前端·助播虾
海的透彻28 分钟前
如何让docker容器启动时用自定义的用户
java·docker·dubbo
疯狂学习GIS33 分钟前
将谷歌地球引擎账号升级为Contributor与Partner层级的方法
java·数据库·人工智能
GG.WinGel44 分钟前
质数数目(蓝桥杯练习题)
java·数据结构·算法·青少年编程·蓝桥杯
泡泡糖的中文规格书1 小时前
HDLbits 2.2 学习笔记 · 多路复用器
java·开发语言
John_Hui1 小时前
第 3 篇:配置 JDK 17 环境
java·开发语言·ubuntu
秋天的怀念_David1 小时前
算法一千零一夜 · 第十七夜 长街点灯
java·程序人生·算法
不吃鱼的羊1 小时前
如何应对恐惧
java