В дампе потока мы можем легко определить состояние потока, посмотрев java.lang.Thread.State: BLOCKED, WAITING, TIMED_WAITING или RUNNING и согласно моему анализу, когда поток ожидает получения блокировки, он блокируется и это можно увидеть, ожидая блокировки, но как поток может быть заблокирован и все еще находиться в заблокированном состоянии
[STUCK] ExecuteThread: '17' для очереди: 'weblogic.kernel.Default (автонастройка)' "# 844 демон prio = 1 os_prio = 0 tid = (любой идентификатор потока) nid = 0xf762, ожидающий входа в монитор [любой замок]
java.lang.Thread.State: BLOCKED (на объектном мониторе)
at some.appcore.AppItem.getServices_Rules (некоторый класс)
- заблокирован (любой класс)
выше - это просто снимок, который указывает, что поток заблокирован и заблокирован. Итак, каковы все причины, по которым эта ситуация может возникнуть?