什么是"编译时间"在VisualGC?

时间:2014-04-01 10:06:55

标签: java visualvm

VisualVM有一个名为" VisualGC"的官方插件。在VisualGC选项卡中,有一个"编译时间"仪表显示编译次数和花费的时间。

无论指定了哪种GC方法/参数,仪表都会显示在任何带有OpenJDK JVM 6 +,Oracle Hotspot JVM 6+的操作系统上。

"编译时间"意思?

如果编译的时间花了很长时间,它会成为一个问题吗?显示很多分钟?

2 个答案:

答案 0 :(得分:2)

检查Oracle documentation on VisualGC

  

编译时间此面板绘制编译Java所花费的时间   字节码到本机代码中。此缩放的高度未缩放   任何特定的价值。此图中的非零值表示   编译活动发生在最后一个时间间隔内。一个狭窄的脉冲   表示持续时间相对较短,宽脉冲表示a   持续时间长。标题栏表示编译任务的数量   和自开始以来累积的编译时间   应用

因为visualgc监视JVM是有道理的。您可能知道,其中一个JVM主要任务是"翻译"虚拟机(字节代码)到您的具体架构说明。

在我的机器中,我观察到这次almos始终为零,因为我的JVM似乎使用JIT。

答案 1 :(得分:1)

根据Oracle文档here编译时间显示" ...将Java字节代码编译为本机代码所花费的时间"因此,编译的新代码越多,它就越高。

enter image description here