首页 > 代码库 > Java基础之线程阻塞队列

Java基础之线程阻塞队列

    阻塞队列是Java线程新特征中的内容,Java定义了阻塞队列的接口java.util.concurrent.BlockingQueue,阻塞队列的概念是,一个指定长度的队列,如果队列满了,添加新元素的操作会被阻塞等待,直到有空位为止。同样,当队列为空时候,请求队列元素的操作同样会阻塞等待,直到有可用元素为止

    阻塞队列还有很多实现类,用来满足各种复杂的需求:BlockingQueue、ArrayBlockingQueue, DelayQueue, LinkedBlockingQueue, PriorityBlockingQueue, SynchronousQueue

package unit_fifteen;import java.util.concurrent.BlockingQueue;import java.util.concurrent.ArrayBlockingQueue;/** * Java线程:新特征-阻塞队列 *  */public class Test {    public static void main(String[] args) throws InterruptedException {        BlockingQueue bqueue = new ArrayBlockingQueue(20);        for (int i = 0; i < 30; i++) {            // 将指定元素添加到此队列中,如果没有可用空间,将一直等待(如果有必要)。            bqueue.put(i);            System.out.println("向阻塞队列中添加了元素:" + i);        }        System.out.println("程序到此运行结束,即将退出----");    }}

 

Java基础之线程阻塞队列