Как Отладить мертвую блокировку в Java с помощью Eclipse

Какие методы могут одно использование для отладки то, что, кажется, мертвая блокировка в программе Java. Моим IDE является Eclipse, и я думаю, что у меня есть identifid два заведенных в тупик потока. В отладчике, щелкая правой кнопкой по любому из рассматриваемых потоков и выбора приостанавливают, приостанавливает поток и отображает код, в настоящее время выполняемый. Попытка неродной в или переступает через вопрос о строке, кажется, не имеет никакого эффекта - изменения состояния потока в "Продвижении" с управлением, никогда не возвращаясь к отладчику, если не приостанавливают, щелкается еще раз.
Спасибо

9
задан 17 January 2010 в 16:56
поделиться

5 ответов

Если вы используете Sun JVM, то прикрепите его с помощью JConsole и перейдите на панель Threads. Там есть кнопка "Обнаружить тупик".

10
ответ дан 4 December 2019 в 15:18
поделиться

При запущении программы в "консольном режиме", можно совершить нападки ctrl+break, который дает вам дамп потока. После того как вы сталкиваетесь с мертвой блокировкой, это могло быть полезно. Если мертвая блокировка не появляется слишком часто, могло бы быть трудно поймать мертвую блокировку как это как бы то ни было.

1
ответ дан 4 December 2019 в 15:18
поделиться

Окно отладки, которое показывает, что стеки различных потоков будут указывать, когда поток останавливается. Когда два потока останавливаются, вы можете изучить то, что каждый ждет. Найти что-то общее, сообщит вам источник тупика.

1
ответ дан 4 December 2019 в 15:18
поделиться

Я не знаю о затмении, но что вы ищете, профилировщик. Контроль JProfiler или взглянул на этот список , например. Профилировщик подключает непосредственно к JVM и визуализирует то, что продолжается в вашей программе в режиме реального времени. Когда мертвые блокировки происходят, вы получаете визуальные/текстовые подсказки, из которых потоки находятся в конфликте.

0
ответ дан 4 December 2019 в 15:18
поделиться

Я бы порекомендовал использовать статический инструмент анализа, как

FindBugs

, которые часто могут обнаруживать тупики при компиляции времени

-1
ответ дан 4 December 2019 в 15:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: