2

私はスレッドダンプを持っています。そこには次のものがあります:

"http-9443-67" daemon prio=10 tid=0x00007f1d5c37e800 nid=0x10331 runnable [0x00007f1d50da9000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x000000032e818150> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2025)
at java.util.concurrent.LinkedBlockingDeque.pollFirst(LinkedBlockingDeque.java:470)
at java.util.concurrent.LinkedBlockingDeque.poll(LinkedBlockingDeque.java:633)
at ...

"http-9443-69" daemon prio=10 tid=0x00007f1d5c8a1000 nid=0x10333 waiting on condition [0x00007f1d511af000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x0000000326940d48> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2025)
at java.util.concurrent.LinkedBlockingDeque.pollFirst(LinkedBlockingDeque.java:470)
at java.util.concurrent.LinkedBlockingDeque.poll(LinkedBlockingDeque.java:633)
at ...

どちらTIMED_WAITING 状態です。

でも :

  • http-9443-67 は実行可能としてマークされています
  • http-9443-69 は条件付きで待機中としてマークされています

それが何を意味するか知っていますか?

4

1 に答える 1

-1

の呼び出しによりスレッドの実行が停止wait()し、'notify()' が呼び出されると再開されます

于 2013-07-11T13:22:31.890 に答える