科技资讯

Java 21 计划砍掉分代式 Shenandoah GC

发布日期:2023-07-08    点击次数:118

出品|开源中国

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

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

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

Java 21 计划砍掉分代式 Shenandoah GC

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

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

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



上一篇:薇娅被罚 13.41 亿元后最终退场,电商公司申请拟注销
下一篇:智能眼镜切入细分市场,做减法或更符合用户需求