我正在尝试使用jvisualvm配置应用程序。该应用程序由一个循环组成,其中从数据库加载数据,然后对数据执行一些复杂的计算。处理完一组数据后,将加载并计算下一组数据。
当我启动我的应用程序并附加jvisualvm时,我在CPU分析页面上设置了一个过滤器(“从类中进行Sart分析”和“不分析类”),因为我对与数据库相关的任何内容都不感兴趣访问和其他输入/输出相关的东西。
过滤器工作 - 几乎。我的问题是,即使sun。*输入到“Do not profile classes”过滤器中,分析器报告的大部分时间都花在sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run()
上。这是sun中唯一的方法。*出现在我的分析结果中。
有没有人见过这个,知道如何摆脱它?问题是,所有其他方法仅在“自我时间”列中显示少量(<1%),大多数显示为0%。
使用的jvisualvm版本是1.3.2。
提前致谢, 阿克塞尔
答案 0 :(得分:1)
听起来大部分时间都是从数据库中等待。如果你想描述剩下的东西,你可以
答案 1 :(得分:0)
取消选中CPU配置文件页面上的“配置新的Runnables”。 要通过“自我时间”回答您的其他问题,您需要获取CPU snapshot个自定义数据。快照包含总方法时间信息。