【发布时间】:2016-03-22 19:43:24
【问题描述】:
JIT 对 Java 程序意味着什么?它是否使执行速度更快?或者是否有不是 JIT 的字节码?
【问题讨论】:
标签: jvm interpreter bytecode compiler-optimization jit
JIT 对 Java 程序意味着什么?它是否使执行速度更快?或者是否有不是 JIT 的字节码?
【问题讨论】:
标签: jvm interpreter bytecode compiler-optimization jit
有两种方法可以禁用 JIT
-Djava.compiler=NONE
否则这几乎不会编译任何东西
-XX:CompileThreshold=2000000000
或在 IBM JVM 上
-nojit
禁用 JIT 会大大降低您的代码速度,例如50 倍,但并非总是如此。如果您将大部分时间花在 IO 或 GUI 更新上,您可能会发现这没什么区别。
【讨论】:
对于 IBM,正确的选项是 -Xnojit 或 -Xint
【讨论】:
在 HotSpot VM 中,可以使用选项 -XX:-UseCompiler 禁用 JIT 编译,该选项跳过编译器线程初始化。
是trueby default:
product(bool, UseCompiler, true,
"Use Just-In-Time compilation")
【讨论】: