我正在尝试使用 jvisualvm 分析应用程序。该应用程序包含一个循环,其中从数据库加载数据,然后对数据执行一些复杂的计算。处理完一组数据后,加载并计算下一组数据。
当我启动我的应用程序并附加 jvisualvm 时,我在 CPU 分析页面上设置了一个过滤器(“Sart profiling from classes”和“Do not profile classes”),因为我对与数据库访问相关的任何内容都不感兴趣,并且其他输入/输出相关的东西。
过滤器工作 - 几乎。我的问题是,分析器报告大部分时间都花在了sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run()
,即使 sun.* 被输入到“不分析类”过滤器中。这是 sun.* 中唯一出现在我的分析结果中的方法。
有没有人见过这个并且知道如何摆脱它?问题是,所有其他方法在“自我时间”列中仅显示少量(<1%),大多数显示为 0%。
使用的 jvisualvm 版本是 1.3.2。
在此先感谢,阿克塞尔