JDK 中 Shenandoah 2.0 的可用性

use*_*513 6 java garbage-collection shenandoah

在 [1, page 16] Aleksey Shipil?v 中说,Shenandoah 2.0 在 JDK 13 GA 中可用。但是在Complete JDK 13 Release Notes [2](包括JDK 13 GA、JDK 13.0.1 GA、JDK 13.0.2 GA)中,并没有提到Shenandoah。

问: Shenandoah 2.0 在 JDK GA 中的当前状态是什么?它是否在 JDK 13 GA 中可用,或者如果没有,它计划用于哪个版本?

[1] https://shipilev.net/talks/jugbb-Sep2019-shenandoah.pdf

[2] https://www.oracle.com/technetwork/java/javase/13all-relnotes-5461743.html

Ale*_*lev 5

众所周知 Oracle没有在其专有的 Oracle JDK 下游或 OpenJDK 构建中提供 Shenandoah。就此而言,Oracle 没有为其构建列出任何与 Shenandoah 相关的发行说明——这是您拥有的链接。您需要来自任何其他 OpenJDK 供应商的 JDK 13,并查看他们的发行说明。可以在此处查看由我自己生成的 vanilla OpenJDK 13u 自动生成的发行说明——在 hotspot/gc 部分中有大量 Shenandoah 的 RN。

“Shenandoah 2.0”确实从 JDK 13 开始发布,它也被反向移植到 Red Hat 11u 和 8u 下游,分别为 11.0.5+ 和 8u242+。最近,有人提议将其贡献给 11u上游。

在雪兰多 wiki的相关部分查看更多详细信息。