并行垃圾回收器---JVM篇

引言:Garbage First(简称G1)是一种垃圾收集器,它是垃圾收集器技术发展历史上的重要里程碑。它基于Region的内存布局,可以针对整个Java堆进行垃圾收集。与传统的垃圾收集器不同,G1可以让用户指定自己期望的停顿时间。它被Oracle官方称为“全功能的垃圾收集器”,在JDK 9服务端模式下成为默认垃圾收集器,而CMS收集器则被宣布为不推荐使用。G1的设计思路是面向局部收集,采用了基于Region的内存布局形式。

历史:1999年,串行 GC第一个被引入 HotSpot 的垃圾收集器,并作为Java Development Kit(JDK)1.3.1 的组成部分。2002 年并行 GC 和并发标记清除(CMS)GC 被引JDK1.4.2。这3 种垃圾收集器基本覆盖了 GC 最重要的3 种使用场景:“内存占用空间以及并发开销最小化”、“应用吞吐量最大化”和“GC 相关中断时间最小化”。

先学习三个术语

我们要明确3个术语:并行、stop-the-world、并发。

并行的意思是,这是个多线程的垃圾收集运算。当一个垃圾收集事件活动被描述为并行,就意味着它正用多线程来执行。当一个垃圾收集器被描述为并行,就意味着它是用多线程来执行垃圾收集就HotSpot的垃圾收集器而言,几乎所有多线程GC操作都由Java VM(JVM)的内部线程处理。与此相比,一个很重要的例外就是 G1 圾收集器,在G1中某些后台的垃圾收集工作能够由应用线程来承担。(后面文章详细说)
术语 stop-the-world 的意思是在一个垃圾收集事件中,所有的JAVA 应用线程全部被暂停。一个 stop-the-world 垃圾收集器就意味着当它执行垃圾收集操作时会停掉所有JAVA应用线程。当一个垃圾收集阶

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值