G1 回收阶段什么时候 STW?

G1(Garbage-First)垃圾回收器是一种被设计用于取代 CMS(Concurrent Mark-Sweep)的垃圾回收器的全新垃圾回收器。它将整个堆内存划分为多个区域,从而可以更灵活地执行垃圾回收操作。在 G1 中,STW(Stop-The-World)暂停是指暂停应用程序的所有线程以执行垃圾回收操作。

在 G1 垃圾回收器中,STW 暂停主要发生在以下几个阶段:

  1. Initial Mark(初始标记阶段):在这个阶段,G1 需要暂停所有应用线程,来标记出需要回收的对象。这个阶段的停顿时间通常很短,不会超过 1 秒。
  2. Remark(再次标记阶段):这个阶段会进行一次短暂的暂停,用于处理在并发标记期间引发的引用更新。
  3. Cleanup(清理阶段):在这个阶段,G1 会暂停应用程序的所有线程,来清理未使用的区域,以确保空闲的区域足够用于下一次垃圾回收。这个阶段通常也会比较短暂。

总的来说,G1 垃圾回收器会通过将其操作拆分为多个阶段,以减少 STW 暂停的时间,提高系统的响应性。虽然 G1 会有一些短暂的 STW 暂停,但整体上可以提供更加可控和可预测的垃圾回收性能。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值