簡體   English   中英

LinkedBlockingQueue - java - 隊列已滿

[英]LinkedBlockingQueue - java - queue full

我有一個鏈接的阻塞隊列,我在其周圍進行協調
20個消費者線程和20個生產者線程的工作。
容量是隊列中的10個(我目前正在測試)。

但是當我進入一個完整的隊列時,而不是阻塞,
我在下面收到此錯誤。 為什么這樣? JavaDoc說
在這種情況下,隊列應該是阻塞的。
我誤會了什么嗎?

java.lang.IllegalStateException: Queue full
    at java.util.AbstractQueue.add(AbstractQueue.java:98)
    at java.util.AbstractQueue.addAll(AbstractQueue.java:187)

你需要在LinkedBlockingQueue上使用put put將在必要時等待,直到空間可用。 offer將返回指示成功或失敗的布爾值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM