JVM常见垃圾收集器有哪些

发布时间:2022-06-24 09:31:07 作者:iii
来源:亿速云 阅读:137

这篇文章主要介绍了JVM常见垃圾收集器有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JVM常见垃圾收集器有哪些文章都会有所收获,下面我们一起来看看吧。

垃圾收集器类型

JVM常见垃圾收集器有哪些

下面我会详细介绍。

1. Serial收集器

1.1 定义

最基本、发展历史最长的垃圾收集器

1.2 优点

暂停工作线程 是在用户不可见的情况下进行

注:并发 与 并行的区别 a. 并发:在 某一时段内,交替执行多个任务(即先处理A再处理B,循环该过程) b. 并行:在 某一时刻内,同时执行多个任务(即同时处理A、B)

垃圾收集高效,即其他工作线程停顿时间短(可控制在100ms内),只要垃圾收集发生的频率不高,完全可以接受。

1.3 使用的垃圾收集算法

复制 算法

1.4 应用场景

客户端模式下,虚拟机的 新生代区域

1.5 工作流程

JVM常见垃圾收集器有哪些

2. Serial Old收集器

2.1 定义

Serial收集器 应用在老年代区域 的版本

2.2 优点

并发、单线程、效率高

Serial收集器,此处不作过多描述

2.3 使用的垃圾收集算法

标记-整理 算法

2.4 应用场景

2.5 工作流程

JVM常见垃圾收集器有哪些

3. ParNew 收集器

3.1 定义

Serial收集器 的 多线程 版本。

3.2 优点

暂停工作线程 是在用户不可见的情况下进行

由于存在线程交互的开销,所以在单CPU环境下,性能差于 Serial收集器

3.3 使用的垃圾收集算法

复制 算法

3.4 应用场景

服务器模式下,虚拟机的 新生代区域

多线程收集

3.5 工作流程

JVM常见垃圾收集器有哪些

4. Parallel Scavenge收集器

4.1 定义

ParNew 收集器的升级版

4.2 特点

4.3 使用的垃圾收集算法

复制 算法

4.4 应用场景

服务器模式下,虚拟机的 新生代区域

4.5 工作流程

JVM常见垃圾收集器有哪些

5. Parallel Old收集器

5.1 定义

Parallel Scavenge收集器 应用在老年代区域 的版本

5.2 特点

以达到 可控制吞吐量 为目标、自适应调节、多线程收集

Parallel Scavenge收集器

5.3 使用的垃圾收集算法

标记-整理 算法

5.4 应用场景

服务器模式下,虚拟机的 老年代区域

5.5 工作流程

JVM常见垃圾收集器有哪些

6. CMS收集器

6.1 定义

Concurrent Mark Sweep,基于 标记-清除算法的收集器

6.2 特点

6.2.1 优点

即在进行垃圾收集时,用户还能工作。

6.2.2 缺点

6.3 使用的垃圾收集算法

标记-清除 算法

6.4 应用场景

重视应用的响应速度、希望系统停顿时间最短的场景

如互联网移动端应用

6.5 工作流程

JVM常见垃圾收集器有哪些

JVM常见垃圾收集器有哪些

7. G1 收集器

7.1 定义

最新、技术最前沿的垃圾收集器

7.2 特点

即在进行垃圾收集时,用户还能工作

并发 & 并行 充分利用多CPU、多核环境下的硬件优势 来缩短 垃圾收集的停顿时间

7.3 使用的垃圾收集算法

7.4 应用场景

服务器端虚拟机的内存区域(包括 新生代 & 老年代)

7.5 工作流程

JVM常见垃圾收集器有哪些

JVM常见垃圾收集器有哪些

8. 总结

JVM常见垃圾收集器有哪些

关于“JVM常见垃圾收集器有哪些”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“JVM常见垃圾收集器有哪些”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. JVM有哪些垃圾收集器
  2. JVM垃圾收集器

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

jvm

上一篇:怎么使用python可视化分析绘制散点图和边界气泡图

下一篇:怎么使用Python轻松实现绘制词云图

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》