标签:
java.util.concurrent
Class ArrayBlockingQueue<E>
阻塞队列是通过数组来实现的。队列的元素顺序是FIFO。队列的头部元素是等待最长时间的,队列的尾部元素是在队列中时间最短的。新元素插在队列的尾部,队列的检索从队列的头部开始。
这是一个典型的有边界的缓存,在这个固定大小的数组中存储着生产者插入的元素,并且能够被消费者取出消费。这个容器的容量是固定的,
当容器已满时,还往容器中插入元素,就会引起操作阻塞;相反,如果试图从一个空队列中取走元素,也会引起操作阻塞。
这个类有一个boolean型的可选参数fairness,默认情况下为false,表明不保证线程的顺序;如果为true,就保证线程以先进先出的顺序访问队列。fairness减少了大并发,而且减少了不可变性和避免了线程饥饿。
标签:
原文地址:http://www.cnblogs.com/feijishuo/p/4543636.html