Есть ли какой-либо механизм в среде отладки Eclipse для просмотра состояния блокировок синхронизации и ожидающих процессов?
Отладка синхронизации Java
Ответ 1
Вы можете показать состояние мониторов объектов в отладчике Eclipse. Вы можете найти короткий, понятный учебник здесь. Для каждого потока Eclipse может показать вам мониторы, которыми владеет нить, и те, которые он ожидает.
Ответ 2
Как было предложено здесь, вы можете (если вы запустите Sun JVM) выполнить следующие шаги:
- запустить jconsole или jvisualvm (оба присутствуют в каталоге bin вашей JDK-установки,
- присоединяется к процессу, который, как вы подозреваете, заблокирован
- перейдите в панель "Темы". Существует кнопка "Detect Deadlock".