Eclipse break on processWorkerExit

在处理了几个请求之后,我的 eclipse 开始在 processWorkerExit() 方法上中断。

根据这个链接,我知道如何抑制日食的中断,但是有什么理由说明为什么代码在这一行上中断。在这种情况下,是否会有内存泄漏?

Tomcat 7.0.27
Eclipse 3.7.2
JDK 7.0.02

enter image description here


答案 1

答案在这里:OpenJDK 在 processWorkerExit 上中断,没有断点

默认情况下,在 eclipse 的调试模式下,将检查未捕获的异常中断。由于此处没有 catch 方法,因此很可能正在引发未捕获的异常,并且在引发异常之前,调试器会立即为您中断。您可以在Java->Debug下的首选项中将其关闭。


答案 2

调试器在该行上停止的原因是,块中的代码会引发异常,而该特定代码行是引发异常后的下一个可执行代码行。您几乎可以肯定地在控制台窗口中看到该异常的堆栈跟踪,因为默认情况下,将向 中冒泡的未捕获异常发送到 。try{}Thread.run()stderr

至于你关于是否存在内存泄漏(或者更有可能的是,这是Java,资源泄漏)的问题:答案是肯定的,可能存在。但是该代码中没有任何内容表明存在。如果存在这样的泄漏,几乎可以肯定是因为实现中存在不正确的异常处理。task