JDK 13:什么是AggressiveOpts?

JVM 11中已弃用Java VM标志-XX:+AggressiveOpts [请参见JDK-8199777JDK-8199778 ]“因为其行为是不明确的。” JDK-8199778的“问题”部分进一步说明了(我添加了重点 ):

AggressiveOpts已被用作实现各种实验性能功能包罗万象的方法,主要目的是提高非常特定的基准上的分数 随着时间的流逝,它受影响的大多数事物都已被删除或集成,从而导致该标志的行为定义不清,并容易引起更多无法解决的问题。 该标志当前具有的唯一作用是设置AutoBoxCacheMax = 20000BiasedLockingStartupDelay = 500 两者都可以通过在命令行上设置相应的标志来手动完成。

根据文档“ Java HotSpot VM Options ”,在J2SE 5 Update 6中添加了-XX:+AggressiveOpts标志,以“打开预期在即将发布的版本中默认的点性能编译器优化”。

文章“ Java的-XX:+ AggressiveOpts:它会使您减速吗? ”将详细检查-XX:+AggressiveOpts VM标志,并进行一些基准比较。 本文的结论是:“通过保留旧式标志,可以减少在已发布的JVM中获得更新,更快的功能的好处。”

柯克·佩珀代因(Kirk Pepperdine)的一篇更老的文章“糟糕的Java HotSpot垃圾收集标志以及如何修复它们! ”专门调出-XX:+AggressiveOpts作为行为未知的VM标志的示例。 Pepperdine写道,自Java SE 5以来,使用此标志的建议并未更改。

当将-XX:+AggressiveOpts标志传递给JDK 11 Java启动器时,将显示警告:“ VM警告:选项AggressiveOpts在版本11.0中已弃用,并且可能在以后的版本中删除。”

积极的选择

JDK 12中-XX:+AggressiveOpts已如广告所示被删除( JDK-8150552 ),并且向任何试图与Java启动器结合使用的人发出了警告。 下一个屏幕快照显示此警告消息,指出:“ VM警告:忽略选项AggressiveOpts; 在12.0英寸中删除了支持 (从JDK 12 Early Access Build #29 [2019/1/24]中删除)。

积极的选择

JDK 13 Early Access构建中 ,如果指定了-XX:+AggressiveOpts ,则VM将不会启动。 这显示在下一个屏幕快照中(JDK 13 Early Access Build#5 [2019/1/24])。

积极的选择

如上图所示,当指定-XX:+AggressiveOpts标志时,VM无法在JDK 13中启动,并且报告错误消息“无法识别的VM选项'AggressiveOpts'。”

-XX:+AggressiveOpts标志在JDK 11已弃用 ,已删除,但仅在JDK 12中指定时才显示警告,并且在JDK 13中指定时被删除并阻止VM启动。

翻译自: https://www.javacodegeeks.com/2019/01/jdk-13-aggressiveopts.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值