阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或者当队列是满时,往队列里添加元素的操作会被阻塞。试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其他的线程往空的队列插入新的元素。同样,试图往已满的阻塞队列中添加新元素的线程同样也会被阻塞,直到其他的线程使队列重新变得空闲起来,如从队列中移除一个或者多个元素,或者完全清空队列.
。。。。。。。。。
不知道你在哪看到的这句话,不过 “ 试图向一个已经满了的阻塞队列中添加一个元素或者是从一个空的阻塞队列中移除一个元索,系统将等待可用的空间 / 在元素变得可用之前一直等待”
这里提到的“等待”并不是线程的wait 而是 LOCK 锁,当满足条件时会 unLock 解锁,当然有些方法也可以在调用的时候设置超时时间
06-26
1977
04-14
609
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交