【Java】Java高并发之BlockingQueue
Java高并发之BlockingQueue
入门小站发布于 46 分钟前
简介
- 当对列满时,进行入队操作时。当一个线程试图对一个已经满了的队列进行入队操作时,也将会被阻塞,除非有一个线程进行了出队列操作。
- 当队列空时,进行出队操作时。当一个线程试图对一个为空的队列进行出队列操作时,也将会被阻塞,费油有一个线程进行了出队列操作。
public interface BlockingQueue<E> extends Queue<E> {}public interface Queue<E> extends Collection<E> {}
Throws Exception | Special Value | Blocks | Times Out | |
---|---|---|---|---|
insert | add(o) | offer(o) | put(o) | offer(o,timeout,timeunit) |
remove | remove(o) | poll() | take() | poll(timeout,timeunit) |
examine | element() | peek() | not applicable | not applicable |
- Throws Exception:抛出异常。如果不能马上进行,则抛出异常。
- Special Value:如果不能马上进行,则返回特殊值,一般是True或False
- Blocks:如果不能马上进行,则操作会被阻塞,直到这个操作成功
- Times Out:如果不能马上进行,操作会被阻塞指定的时间。如果指定时间还未执行,则返回特殊值,一般是True或False。
BlockingQueue
具体实现类
- ArrayBlockingQueue
- LinkedBlockingQueue
- DelayQueue
- PriorityBlockingQueue
- SynchronousQueue
关注微信公众号:【入门小站】,解锁更多知识点。
java多线程
阅读 22发布于 46 分钟前
本作品系原创,采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
入门小站
rumenz.com
41 声望
2 粉丝
入门小站
rumenz.com
41 声望
2 粉丝
宣传栏
简介
- 当对列满时,进行入队操作时。当一个线程试图对一个已经满了的队列进行入队操作时,也将会被阻塞,除非有一个线程进行了出队列操作。
- 当队列空时,进行出队操作时。当一个线程试图对一个为空的队列进行出队列操作时,也将会被阻塞,费油有一个线程进行了出队列操作。
public interface BlockingQueue<E> extends Queue<E> {}public interface Queue<E> extends Collection<E> {}
Throws Exception | Special Value | Blocks | Times Out | |
---|---|---|---|---|
insert | add(o) | offer(o) | put(o) | offer(o,timeout,timeunit) |
remove | remove(o) | poll() | take() | poll(timeout,timeunit) |
examine | element() | peek() | not applicable | not applicable |
- Throws Exception:抛出异常。如果不能马上进行,则抛出异常。
- Special Value:如果不能马上进行,则返回特殊值,一般是True或False
- Blocks:如果不能马上进行,则操作会被阻塞,直到这个操作成功
- Times Out:如果不能马上进行,操作会被阻塞指定的时间。如果指定时间还未执行,则返回特殊值,一般是True或False。
BlockingQueue
具体实现类
- ArrayBlockingQueue
- LinkedBlockingQueue
- DelayQueue
- PriorityBlockingQueue
- SynchronousQueue
关注微信公众号:【入门小站】,解锁更多知识点。
以上是 【Java】Java高并发之BlockingQueue 的全部内容, 来源链接: utcz.com/a/105951.html
得票时间