JVM(尤其是HotSpot VM)以运行时应用大量优化而闻名。
有没有办法查看某个代码片段,看看JVM实际上对其做了什么?
JVM(尤其是HotSpot VM)以运行时应用大量优化而闻名。
有没有办法查看某个代码片段,看看JVM实际上对其做了什么?
如果您真的对生成的代码感兴趣,可以尝试使用来自OpenJDK的DEBUG JVM:
这是一个关于 HotSpot 优化 的好文章。
编译器所产生的字节码可以展现出其中一些优化。其他优化则是动态的,只存在于运行时。例如,HotSpot 可以通过 栈上替换 来直接在运行时修改堆栈。