当Java调试可能导致我的进程挂起的时候

我有一个Java服务器进程,它执行繁重的处理。它会间歇性地停止处理,就像在日志停止时一样,活动停止但进程仍处于活动状态。 调试几次后,我发生了这种情况。当它出现时,我在调试器中点击暂停/中断,这样我就可以检查正在运行的线程并查找停止的原因。但暂停按钮不会像通常那样进入程序,只是坐在那里。我使用IntelliJ IDEA,但我不确定它是IDE还是JVM有问题。 我尝试在问题出现之前进入程序并且它工作正常,进程停止并且我可以检查线程列表。 有谁知道为什么JVM不会响应调试暂停/中断?它如何进入这种情况?我有点卡住了,因为我没有办法诊断这个问题而不能在程序状态被破坏时看到它。导致问题的日志显示没有问题。     
已邀请:
你能和JVisualVM联系吗?你的CPU是100%吗?我们有一个平等的问题。申请被停止了。 JVisualVM已不再连接。使用jstack的线程转储显示所有线程都是stooped(多个线程转储之间没有差异),但VM消耗100%CPU。我们改变了硬件,问题解决了。我们认为这是一个RAM问题,垃圾收集在无限循环中运行。但这只是一种理论。 如果你能解决问题,请更新我。     

要回复问题请先登录注册