我有几个更大的方法,我正在尝试用Java进行优化。我一直使用jVisualVM来做我的大部分分析,因为它提供了方法调用的热点,是一个很好的起点。
我正在寻找的是一个逐行热点分析器,它可以帮助我缩小花费这么长时间的范围。我过去使用的ovbious工作只是战略性地放置System.currentTimeMillis()打印,在更极端的情况下使用Java CPUTime (通过JNI完成)。有一些分析器,如英特尔并行放大器,它与C& Visual Studio一起工作,但有任何类似的Java吗?
这两个选项都有点单调乏味,那么有没有什么东西(Eclipse插件或其他)可以进行逐行热点分析呢?
发布于 2012-02-15 16:46:08
JProfiler具有行号分辨率。它在默认情况下是不启用的,但是如果您编辑分析设置,在“方法调用记录”选项卡上有一个名为“记录行号并在调用树中显示它们”的复选框:

免责声明:我的公司开发JProfiler。
发布于 2012-02-15 14:38:19
在dynaTrace中,你可以通过插装所有被调用的方法来做类似的事情,但是它是一个商业工具。或者,您可以使用例如ASM编写您自己的检测工具(但它非常乏味:( )
https://stackoverflow.com/questions/9288787
复制相似问题