Как определить потоки в перспективе отладки Eclipse? - PullRequest
6 голосов
/ 22 марта 2011

Я занимаюсь разработкой Java-приложения с несколькими потоками.Я печатаю в консоли идентификатор потока, например, 17, 18, 19 и т. Д.Но когда у меня открыта перспектива отладки, у меня появляется это окно «Отладка» (самое верхнее левое окно), в котором отображаются текущие потоки, но они используют [Thread-2], [thread-3].Числа не обязательно совпадают с ThreadIds.

Можно ли каким-либо образом сопоставить ThreadId, который я получаю в консоли, с потоком, показанным в окне «Отладка»?

Ответы [ 3 ]

6 голосов
/ 22 марта 2011

Я не знаю, как это сделать.

Однако есть другой подход.Эти имена потоков генерируются автоматически используемым вами конструктором Thread.Тем не менее, существует метод с именем Thread.setName(), который позволяет изменить имя потока.Вы могли бы настроить ваше приложение, чтобы изменить имена потоков, которые оно создает, в соответствии с идентификаторами потоков.

3 голосов
/ 22 марта 2011

В Eclipse нет ничего подобного, но если вы хотите найти какой поток, добавьте в код точку отладки и вызовите

Thread.currentThread();

чтобы найти поток, который в данный момент выполняется.

Смотрите эту тему для получения дополнительной информации о том же.

http://dev.eclipse.org/mhonarc/lists/platform-debug-dev/msg00845.html

1 голос
/ 06 января 2014

Вместо печати идентификатора потока вы можете напечатать имя потока. Thread.currentThread().getName(). Это имя отображается в отладчике.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...