常见的几种垃圾回收器

ops/2024/10/21 6:32:19/

什么是垃圾回收器,可以这样理解,垃圾回收算法是概念理论,对应JAVA中的接口,垃圾回收器就是具体的实现,JVM有很多垃圾回收器,它们实现了不同的垃圾回收算法,可以用在不同jdk版本,也适配不同的区域,比如青年代老年代都有各自专属的垃圾回收器。

在年轻代(Young Generation)中使用的垃圾回收器:

  1. Serial Garbage Collector (SerialGC):适用于单线程应用程序或小型应用程序。它使用标记-复制算法进行垃圾收集,停止应用程序线程以执行垃圾回收操作。

  2. Parallel Garbage Collector (ParallelGC):也称为吞吐量收集器,适用于多核处理器的应用程序。它使用标记-复制算法,但允许多个线程并行执行垃圾回收操作,以提高吞吐量。

  3. G1 Garbage Collector (G1GC):适用于大型内存应用程序。它使用分代收集,但将年轻代和老年代划分为不同的区域,使用标记-整理算法,以更好地控制垃圾回收的停顿时间和内存利用率。

在老年代(Old Generation)中使用的垃圾回收器:

  1. CMS Garbage Collector (CMsGC):也称为Concurrent Mark-Sweep收集器,适用于需要低停顿时间的应用程序。它使用标记-清除算法,但在标记和清除阶段允许与应用程序线程并发执行,以减少停顿时间。

  2. Parallel old Garbage Collector (ParalleloldGC): 与ParallelGC类似,但专门用于老年代。它使用标记-复制算法。

其他特殊用途的垃圾回收器:

  1. Z Garbage Collector(ZGC):适用于需要低延迟和大内存的应用程序。它使用分代收集,但在标记和整理阶段允许与应用程序线程并发执行,以减少停顿时间。

  2. G1 Garbage Collector (G1GC):在G1GC中,老年代的垃圾回收也使用标记-整理算法,与年轻代的处理方式相似。适用于大内存和低延迟要求的应用,具有高度可预测的停顿时间

Serial和Serial Old 是串行的,jdk早期。Serial:标记复制算法,Serial Old:标记整理算法。都要stw,都只有一个gc线程。

Parallel Scavenge、Parallel Old是java8默认的。Parallel Scavenge:标记复制算法,Parallel Old:标记整理算法。有多个gc线程。


http://www.ppmy.cn/ops/15911.html

相关文章

分布式技术在文本摘要生成中的应用

摘要 自然语言处理首先要应对的是如何表示文本以供机器处理,随着网络技术的发展和信息的公开,因特网上可供访问的数字文档成爆炸式的增长,文本摘要生成逐渐成为了自然语言处理领域的重要研究课题。本文主要介绍了分布式技术在文本摘要生成中…

react之组件与JSX

第一章 - 描述用户界面 概述:React是一个用于构建用户界面(UI)的JavaScript库,用户界面由按钮,文本和图像等小单元内容构建而成。React帮助你把它们组合成可重用,可嵌套的组件。从web端网站到移动端应用&a…

C++/QT + Mysql + Tcp 企业协作管理系统

目录 一、项目介绍 二、项目展示 三、源码获取 一、项目介绍 1、项目概要:C/S架构、数据库Mysql、C、QT;支持实时通信、局域网内通信,可多个客户端同时登录; 2、(Server)管理端:用户管理、…

【笔试训练】day11

1.游游的水果大礼包 思路: 枚举。假设最后的答案是x个a礼包,y个b礼包,得到一个式子:ansa*xb*y 我们可以枚举x的数量,这样就能变相的把y的求出来。呃这就是鸡兔同笼问题嘛 x最大的范围是多少呢?也就是a礼…

人工智能在现代科技中的应用和未来发展趋势

人工智能(Artificial Intelligence,简称AI)作为一种模拟人类智能的技术,已经在现代科技中得到广泛应用,并且在未来有着更大的发展潜力。 首先,人工智能在现代科技中的应用是非常广泛的。其中,最…

数据结构PT2——堆栈/队列

一、堆栈(FILO) 堆栈是一种线性结构,也是一种特殊的线性表 1:堆栈的顺序存储实现 栈的顺序存储结构通常由一个一维数组和一个记录栈顶元素位置的变量组成 #define MaxSize typeof struct SNode *Stack struct SNode{ElementType Data[MaxSi…

【毕设绝技】基于 SpringCloud 的在线交易平台商城的设计与实现(一)

毕业设计是每个大学生的困扰,让毕设绝技带你走出低谷迎来希望! 基于 SpringCloud 的在线交易平台商城的设计与实现 一、摘 要 随着互联网的快速发展,人们对商品经济的消费和思考不再停留在传统的经济模式上,网上购物商城是企业与…

面试二十二、跳表SkipLists

跳表全称为跳跃列表,它允许快速查询,插入和删除一个有序连续元素的数据链表。跳跃列表的平均查找和插入时间复杂度都是O(logn)。快速查询是通过维护一个多层次的链表,且每一层链表中的元素是前一层链表元素的子集(见右边的示意图&…