首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java 21 计划砍掉分代式 Shenandoah GC

出品|开源中国

Java 21 预计于 2023 年 9 月 19 日正式发布,这是继 Java 17 之后的下一个 LTS 版本。截至 6 月 8 日,JDK 21 已进入 Rampdown 第一阶段;随着整个功能集被冻结,分代式 Shenandoah(Generational Shenandoah) 功能将被删除(从 16 个功能削减到 15 个),这是一种增强 Shenandoah 垃圾收集器 (GC) 的实验性功能。

根据介绍,分代式 Shenandoah 功能被移除的核心原因是缺乏准备。分代式 Shenandoah 的 JEP 作者 Roman Kennke提议将其从 Java 21 中删除,以更好的评估准备情况。“Shenandoah 团队决定跳过 JDK 21 并花时间尽我们所能提供最好的 Generational Shenandoah。”

“我们要感谢所有花时间审查我们的拉取请求并提供反馈的人。鉴于在审查过程中发现的风险,以及没有足够的时间来执行如此大量的代码贡献所需的彻底审查,我们决定目前关闭此 PR。我们将寻求以 JDK 22 为目标。”

分代式 Shenandoah 将通过实验性的分代收集功能来增强 Shenandoah,以提高可持续吞吐量、负载峰值弹性和内存利用率。该计划旨在不会破坏 non-generational Shenandoah 的情况下,提供实验性的分代模式,以在未来版本中使其成为默认模式。其他目标包括在不牺牲低 GC pauses 的情况下减少持续内存占用、减少 CPU 和功耗、保持高吞吐量,以及降低在分配峰值期间导致退化和完整集合的风险。而 Non-generational Shenandoah 不会被取代。

移除建议的审查期截至 6 月 14 日,如果没有太大异议的话,该 JEP 将正式从 JDK 21 中删除。此决策只与支持 Shenandoah GC 的 OpenJDK 版本用户有关;不会影响 G1 GC、Z Garbage Collector(ZGC)或其他现代垃圾收集器。也不影响使用 G1 GC 和 ZGC 的 Java 发行版,如 Oracle OpenJDK 和 Oracle JDK。

JDK 21 的初始候选版本将于 8 月发布,第二个候选版本将于 8 月下旬发布。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230612A02HJK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券