Jvm 有没有办法关闭JIT编译器?这样做是否会影响性能?

Jvm 有没有办法关闭JIT编译器?这样做是否会影响性能?,jvm,interpreter,bytecode,compiler-optimization,jit,Jvm,Interpreter,Bytecode,Compiler Optimization,Jit,JIT对java程序意味着什么?它会使执行速度更快吗?还是有字节码不是JIT的?有两种方法可以禁用JIT -Djava.compiler=NONE 或者这几乎不会编译任何东西 -XX:CompileThreshold=2000000000 或者在IBMJVM上 -nojit 禁用JIT会大大降低代码的速度,例如50倍,但并非总是如此。如果您将大部分时间花在IO或GUI更新上,您可能会发现这没什么区别。对于IBM来说,正确的选项是-Xnojit或-Xint 以仅解释模式运行应用程序。编译本

JIT对java程序意味着什么?它会使执行速度更快吗?还是有字节码不是JIT的?

有两种方法可以禁用JIT

-Djava.compiler=NONE 
或者这几乎不会编译任何东西

-XX:CompileThreshold=2000000000
或者在IBMJVM上

-nojit

禁用JIT会大大降低代码的速度,例如50倍,但并非总是如此。如果您将大部分时间花在IO或GUI更新上,您可能会发现这没什么区别。

对于IBM来说,正确的选项是-Xnojit或-Xint

以仅解释模式运行应用程序。编译本机代码被禁用,所有字节码都由解释器执行


在Java9之前,类知道
java.compiler
系统属性。在HotSpot VM中,它被标记为
@Deprecated

,可以使用跳过编译器线程初始化的选项禁用JIT编译

这是真实的:


我正在学习java,对大部分内容都有很多疑问……谢谢你的回答。:)此外,我想知道当我们禁用JIT时,编译器将扮演什么角色?@CoDerus禁用JIT意味着没有编译器。相反,代码只在解释器模式下运行。这并不能提供问题的答案。若要评论或要求作者澄清,请在其帖子下方留下评论。-当我写下他的答案时,我被禁止发表评论。否则,我会的。
-Xint
product(bool, UseCompiler, true,                                          
        "Use Just-In-Time compilation")