我正在开发一个有一些线程的Java应用程序。我在控制台中打印了threadId,例如17,18,19等。 但是当我打开调试透视图时,我有一个“调试”窗口(最左上角的窗口),它显示当前线程,但它们使用[Thread-2],[thread-3]。这些数字不一定与ThreadIds匹配。
有什么方法可以将我在控制台中获得的ThreadId与“Debug”窗口中显示的线程相关联吗?
答案 0 :(得分:6)
我不知道如何做到这一点。
然而,还有另一种方法。这些线程名称由您正在使用的Thread构造函数自动生成。但是,有一个名为Thread.setName()
的方法允许您更改线程的名称。您可以调整应用程序以更改它创建的线程的名称以匹配线程的ID。
答案 1 :(得分:3)
Eclipse中没有这样的东西,但是如果你想找到哪个线程,那么在代码上添加调试点并调用
Thread.currentThread();
找出当前正在执行的线程。
观看此主题以获取更多相关信息。
http://dev.eclipse.org/mhonarc/lists/platform-debug-dev/msg00845.html
答案 2 :(得分:1)
您可以打印线程名称,而不是打印线程ID。 Thread.currentThread().getName()
。这是调试器中显示的名称。