VisualVM对我来说是一个不错但有点复杂的工具。
我写了一个包含许多函数的类(在Eclipse中)。如何获取每个函数调用的时间以及执行期间的成本时间信息?
答案 0 :(得分:36)
实际上很简单。运行您的程序,它将自动显示为VisualVM面板中的正在运行的进程。单击它,然后直接进入Sampler选项卡。 Finnaly,点击CPU和宾果!在那里你可以看到每个功能的时间! (真棒!)
答案 1 :(得分:4)
请参阅Profiling With VisualVM, Part 1和Profiling 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。它将解释您的计划需要改进的地方。
谢谢,