博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
13、ArrayBlocking
阅读量:7071 次
发布时间:2019-06-28

本文共 417 字,大约阅读时间需要 1 分钟。

java.util.concurrent

Class ArrayBlockingQueue<E>

 

阻塞队列是通过数组来实现的。队列的元素顺序是FIFO。队列的头部元素是等待最长时间的,队列的尾部元素是在队列中时间最短的。新元素插在队列的尾部,队列的检索从队列的头部开始。

 

这是一个典型的有边界的缓存,在这个固定大小的数组中存储着生产者插入的元素,并且能够被消费者取出消费。这个容器的容量是固定的,

当容器已满时,还往容器中插入元素,就会引起操作阻塞;相反,如果试图从一个空队列中取走元素,也会引起操作阻塞。

 

这个类有一个boolean型的可选参数fairness,默认情况下为false,表明不保证线程的顺序;如果为true,就保证线程以先进先出的顺序访问队列。fairness减少了大并发,而且减少了不可变性和避免了线程饥饿。

 

转载于:https://www.cnblogs.com/feijishuo/p/4543636.html

你可能感兴趣的文章
在控制台程序中使用MFC类
查看>>
用enum类型数据解决switch case选择字符串的问题
查看>>
Exception happened during processing of request
查看>>
微服务间的通信如何选择
查看>>
android中的智能指针
查看>>
PHP获取今天、明天、一个月后、一年后等等时间函数
查看>>
wampServer配置局域网文件共享
查看>>
SpringBoot基础教程2-1-2 Controller规范及响应规范
查看>>
在两个ASP.NET页面之间传递值(转)
查看>>
linux安装软件备忘
查看>>
Springboot 笔记
查看>>
自己动手实现RPC服务调用框架
查看>>
AngularJs学习笔记--bootstrap
查看>>
String 、InputStream、Reader 的转换
查看>>
为Sublime Text 2安装Emmet(原Zen Coding)
查看>>
使用 IBM Data Studio 开发调试 DB2 存储过程
查看>>
Hyperledger Fabric 客户端开发二
查看>>
hibernate插入CLOB大数据类型
查看>>
4、ES5对Object对象的扩展。
查看>>
block的回调作用
查看>>