Ich habe einen Testamentsvollstrecker, der für den Verzehr von Nachrichten von einem ArrayBlocking -Verfahren verantwortlich ist. < /p>
new ThreadPoolExecutor(1, 1, 0L,
TimeUnit.MILLISECONDS,
new LinkedBlockingQueue(1),
r -> {
return new Thread(r, "Request-Queue-Drainer");
});
< /code>
Request-Queue-Drainer-Thread befindet sich im Wartezustand (obwohl Aufgaben an diesen Thread übermittelt werden). Das Folgende ist der Thread-Dump. < /p>
Name: Request-Queue-Drainer
State: WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@5b4757a2
Total blocked: 0 Total waited: 8
Stack trace:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
java.lang.Thread.run(Thread.java:745)
< /code>
Was könnte der Grund dafür sein, dass der Thread im Wartenstatus steht?
Was könnte der Grund dafür sein, dass Thread unter java.util.concurrent.threadpoolexecutor.gettask geparkt wird ⇐ Java
-
- Similar Topics
- Replies
- Views
- Last post
-
-
Was ist der Unterschied zwischen ProcessPoolExecutor und ThreadPoolExecutor?
by Anonymous » » in Python - 0 Replies
- 5 Views
-
Last post by Anonymous
-