dig*_*ity 5 java jvm compiler-optimization escape-analysis stack-allocation
HotSpot Java 9-13 的堆栈分配优化规则是否不太严格?
在 Java 7 和 Java 8 HotSpot 中,对象的堆栈分配(由于称为标量对象替换的 JVM 优化)是可能的,但要在线程堆栈上实现无垃圾分配,必须满足许多严格的约束。
针对 Java 8(HotSpot、OpenJDK 8)启用堆栈分配优化的规则总结在这个问题的精彩回答中: Hotspot 什么时候可以在堆栈上分配对象? 至于 Java 7,这里: Eligibility for escapeanalysis/stack allocate with Java 7
在这个问题中,我想了解较新的 JDK 版本中 EA 和堆栈分配优化的当前状态是什么?其他 Java VM(例如 OpenJ9)是否有不同的规则?