为什么 visualvm 中的 "Total Time" 列与运行时持续时间不同?
Why does the "Total Time" column in visualvm differ from runtime duration?
我已经 运行 visualvm
中的 CPU Profiler 在我的 java
过程中使用了 45 分钟,但是 "Total Time" 列仅粗略显示104,000ms
过去了(即 104 秒),它在增长,但增长缓慢。
这显然没有映射到真实的物理时间,因为我期望看到 45*60*1000 毫秒过去了(不是 104*1000)。它在测量什么?
正如工具提示悬停所说 "Time spent in all invocations on this method (including further method calls)"。 IE。方法特定的挂钟时间,包括在方法中完成的调用。
您可以将它与总 CPU 时间进行比较,以了解时间在处理器方面的使用效率。
我已经 运行 visualvm
中的 CPU Profiler 在我的 java
过程中使用了 45 分钟,但是 "Total Time" 列仅粗略显示104,000ms
过去了(即 104 秒),它在增长,但增长缓慢。
这显然没有映射到真实的物理时间,因为我期望看到 45*60*1000 毫秒过去了(不是 104*1000)。它在测量什么?
正如工具提示悬停所说 "Time spent in all invocations on this method (including further method calls)"。 IE。方法特定的挂钟时间,包括在方法中完成的调用。
您可以将它与总 CPU 时间进行比较,以了解时间在处理器方面的使用效率。