我的程序一直以最高1%的CPU使用率运行,但有时因为程序中的某些事件,我无法确定,它每100秒使用100%约5-10秒。它看起来像一个螺纹导致使用高峰,但我无法确定它的来源(有8000个类,所以这很难)。很难测试问题是否仍然存在(例如在使代码的某些部分“死”之后),因为该问题有时会在虚拟机生命周期的几个小时后开始存在。
你知道什么可以帮助我找到问题的根源吗?
答案 0 :(得分:5)
如果没有更多信息,甚至无法猜测问题的原因。
我建议使用分析器(例如VisualVM)来确定导致问题的线程以及可能发生的确切情况。
使用分析器会告诉您例如: