java threadump значение "ожидание при условии"

У меня есть threaddump приложения, которое показало 3 темы, как показано ниже.

===============

"http-443-11" daemon prio=10 tid=0x00000000473bc800 nid=0x3590 waiting on condition [0x0000000061818000]
   java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x00000007612a3880> (a java.util.concurrent.Semaphore$NonfairSync)

"http-443-4" daemon prio=10 tid=0x00000000451f6000 nid=0x243a waiting on condition [0x0000000055354000]
   java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x00000007612a3880> (a java.util.concurrent.Semaphore$NonfairSync)

"http-443-7" daemon prio=10 tid=0x000000004602e000 nid=0x2974 waiting on condition [0x000000005e6e7000]
   java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x00000007612a3880> (a java.util.concurrent.Semaphore$NonfairSync)

===============

Какое значение имеет "ожидание при условии []"? Что означает число в []?

1 ответ

В стеке потоков мы видим, что потоки являются потоками демонов и ожидают выполнения задачи. Так как эти потоки создаются при запуске JVM, они не будут убиты, если JVM не завершит работу или не запущен какой-либо поток, не являющийся демоном, поэтому они ожидают выполнения задач. Скажем, поток сбора мусора - это поток демона, который может работать не все время, а в состоянии ожидания.

Другие вопросы по тегам