24

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

我编写了一个具有许多功能的类(在 Eclipse 中)。如何获取每个函数调用多少次以及执行期间花费的时间的信息?

4

4 回答 4

55

其实很简单。运行您的程序,它将自动在 VisualVM 面板中显示为正在运行的进程。单击它,然后直接转到 Sampler 选项卡。最后,点击CPU,你就搞定了。在那里你可以看到每个函数所花费的时间。

于 2015-05-14T18:49:53.293 回答
4

请参阅使用 VisualVM 进行分析,第 1 部分使用 VisualVM 进行分析,第 2 部分,以获取有关分析以及如何设置分析根和检测过滤器的更多信息。

于 2013-05-09T08:19:29.863 回答
2

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

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

于 2013-05-08T12:54:49.367 回答
0

这可能对你有点帮助..

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

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

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

您可以为调用函数的次数保留一个计数器值。

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

谢谢,

于 2013-05-08T13:03:42.600 回答