一尘不染

如何在Eclipse远程调试器中找到有问题的线程?

tomcat

我有一个在jboss应用程序服务器中运行的Web应用程序(但是它不是jboss特有的,因此我们也可以假定它是tomcat或任何其他服务器)。现在我有一个问题,似乎一个线程处于死锁状态。它一直使用100%CPU。我已经启动了启用了调试端口的服务器,并且可以将Eclipse连接到它。但是问题是:有很多线程在运行。如何找到合适的线程?我知道进程ID(来自Linux“
top”命令),但我认为这无济于事。我真的必须分别打开每个线程并检查它们当前正在做什么吗?还是有一种方法可以过滤线程以使其“最活跃”或类似Eclipse中的东西?


阅读 259

收藏
2020-06-16

共1个答案

一尘不染

您可以尝试生成线程转储(如该线程所示CTRL
+ Break )。

或者,您可以将JConsole附加到远程会话(因此暂时不使用Eclipse),监视线程并生成线程转储。

替代文字http://www.jroller.com/dumpster/resource/tdajconsole.png

2020-06-16