如何理解jstat-printcompilation输出


jstat -printcompilation pid 

可以获得有关最后一个编译方法的信息,如:

Compiled  Size  Type Method
207     64    1 java/lang/CharacterDataLatin1 toUpperCase
208      5    1 java/math/BigDecimal$StringBuilderHelper getCharArray

第三列是什么意思?我找不到有关"类型"的详细信息。包括多少种类型?

https://docs.oracle.com/javase/9/tools/jstat.htm#JSWOR734

oracle文档还没有足够的信息

Type列中的值对应于此枚举:

1 = normal_compile  // Regular JIT compilation
2 = osr_compile     // On-stack replacement
3 = native_compile  // Compiled wrapper for a native method

但是,normal_compile以外的值仅在设置了-XX:+CICountOSR-XX:+CICountNative选项的JVM调试构建中可用:

int last_compile_type = normal_compile;
if (CICountOSR && is_osr) {
last_compile_type = osr_compile;
} else if (CICountNative && method->is_native()) {
last_compile_type = native_compile;
}

在实践中,这意味着Type始终是具有常规JDK的1

相关内容

  • 没有找到相关文章

最新更新