我想更好地了解 HotSpot 可能在运行时为我的 Java 代码生成哪些优化。
有没有办法查看 HotSpot 在运行一段时间后使用的优化代码?
我想更好地了解 HotSpot 可能在运行时为我的 Java 代码生成哪些优化。
有没有办法查看 HotSpot 在运行一段时间后使用的优化代码?
您需要使用选项-XX:+PrintAssembly
和启动 JVM -XX:UnlockDiagnosticVMOptions
,但 PrintAssembly 要求 JVM 具有 hsdis 二进制文件(HotSpot 反汇编程序)。由于许可证不兼容,hsdis 二进制文件未与 JVM 一起分发,因此您需要自己编译 hsdis或从非官方网站查找预构建的 hsdis 二进制文件。