Есть ли у нас гарантия, что показанная трассировка стека плюс описание его заголовка (в дампе потока) для данного потока всегда согласованы? - PullRequest
2 голосов
/ 09 мая 2019

При принятии дампа потока мы уверены, что то, что мы получаем, обязательно является связным?Под этим я подразумеваю, что если он скажет мне, что он заблокирован, то действительно заблокирован?

"subscription-akka.actor.default-dispatcher-16" #165 prio=5 os_prio=31 tid=0x00007fce799da000 nid=0xd70b waiting for monitor entry [0x0000700006b01000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at java.util.Formatter$Flags.parse(Formatter.java:4439)
        at java.util.Formatter$FormatSpecifier.flags(Formatter.java:2640)
        at java.util.Formatter$FormatSpecifier.<init>(Formatter.java:2709)

Поскольку приведенный выше пример действительно странный, так как Formatter.java:4439 указывает на

public static Flags parse(String s) {
            char[] ca = s.toCharArray();
  ->>> here Flags f = new Flags(0);
            for (int i = 0; i < ca.length; i++) {
                Flags v = parse(ca[i]);

, что кажется бессмысленным (в последнее время не произошло никаких изменений вэтот класс в OpenJDK 8 / Zulu (который я использую).

Любое (иное) хорошее объяснение наблюдаемого поведения?

Спасибо

...