Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
LinkedBlockingQueue-java-队列已满_Java_Multithreading - Fatal编程技术网

LinkedBlockingQueue-java-队列已满

LinkedBlockingQueue-java-队列已满,java,multithreading,Java,Multithreading,我有一个链接的阻塞队列,我围绕它进行协调 20个使用者线程和20个生产者线程的工作。 容量是队列的10(我目前正在测试) 但是,当我进入一个完整的队列时, 我在下面得到了这个错误。为什么会这样?JavaDoc说 在这种情况下,队列应该是阻塞的。 我是不是误解了什么 java.lang.IllegalStateException: Queue full at java.util.AbstractQueue.add(AbstractQueue.java:98) at java.uti

我有一个链接的阻塞队列,我围绕它进行协调
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
将根据需要等待足够长的时间,直到空间可用
offer
将返回一个表示成功或失败的布尔值。

谢谢,我想我现在明白我的错误了。