我想知道如何检查JIT编译器是否已关闭。我有以下代码,旨在关闭JIT编译器。问题是,我不确定它是否实际上做到了这一点。所以我想知道是否有一种方法来检查JIT是否关闭。
我查看了Compiler类,但没有像isDisabled/enabled()
这样的方法。
代码:
Compiler.disable();
非常感谢您的帮助和指导。
我想知道如何检查JIT编译器是否已关闭。我有以下代码,旨在关闭JIT编译器。问题是,我不确定它是否实际上做到了这一点。所以我想知道是否有一种方法来检查JIT是否关闭。
我查看了Compiler类,但没有像isDisabled/enabled()
这样的方法。
代码:
Compiler.disable();
非常感谢您的帮助和指导。
-Xint
选项: -Xint 只以解释模式运行。禁用编译到本机代码,并且所有字节码都由解释器执行。 Java HotSpot Client VM的自适应编译器提供的性能优势在此模式下不会存在。java -X
时,选项可用。是否使用JIT编译器是JRE决策,这与将源代码编译为字节码(javac
的工作)无关:您可能会因为使用javac
而不是java
而遇到此错误。 - Bruno-Djava.compiler=NONE
选项来禁用JIT编译器。因此,可以推断出当变量未设置或设置为非NONE时,则启用JIT编译器。当方法编译完成时,您可以使用`-XX:+ PrintCompilation`将其打印出来。如果您的方法未被打印出来,或在打印后突然变得更快,则可以查看可能的原因。