如何使用VisualVM来获取每个功能的成本

时间:2013-05-08 12:53:51

标签: java profiler visualvm

VisualVM对我来说是一个不错但有点复杂的工具。

我写了一个包含许多函数的类(在Eclipse中)。如何获取每个函数调用的时间以及执行期间的成本时间信息?

4 个答案:

答案 0 :(得分:36)

实际上很简单。运行您的程序,它将自动显示为VisualVM面板中的正在运行的进程。单击它,然后直接进入Sampler选项卡。 Finnaly,点击CPU和宾果!在那里你可以看到每个功能的时间! (真棒!)

答案 1 :(得分:4)

请参阅Profiling With VisualVM, Part 1Profiling With VisualVM, Part 2以获取有关分析以及如何设置分析根和检测过滤器的更多信息。

答案 2 :(得分:2)

对于详尽的分析,需要使用替代工具,例如: JProfiler的。

根据@TomasHurka所说,您可以使用VisualVM(https://blogs.oracle.com/nbprofiler/entry/profiling_with_visualvm_part_1)进行概述

答案 3 :(得分:0)

这可能对你有所帮助..

使用时差通过使方法返回某些内容来计算执行。

  long before = System.currentTimeMillis();
  String responseFromMethod=methodCall(); // String value returned from method

  long totalResponseTime=((System.currentTimeMillis() - before )/1000); 

您可以保持计数器调用函数的次数。

对于VisualVM,您可以使用Eclipse MAT来分析heapdump。它将解释您的计划需要改进的地方。

谢谢,