JAVA种常见的7种阻塞队列.
1.ArrayBlockingQueue
ArrayBlockingQueue是一个用数组实现的有界阻塞队列.该队列按照FIFO的原则对元素进行排序.
2.LinkedBlockingQueue
LinkedBlockingQueue是一个用链表实现的有界阻塞队列.该队列的默认和最大长度长度为Integer.MAX_VALUE,按照FIFO的原则对元素进行排序.
3.PriorityBlockingQueue
PriorityBlockingQueue是一个支持优先级的无界阻塞队列.默认情况下元素采取自然顺序升序排列.
4. DelayQueue
DelayQueue是一个支持延时获取元素的无界阻塞队列.队列种的元素必须实现Delayed接口,在创建元素时可以指定多久才能从队列种获取当前元素.只有在延迟期满时才能从队列中提取元素.
5.SynchronousQueue
SynchronousQueue是一个不存储任何元素的阻塞队列.每一put操作必须等待一个take操作,否则不能继续添加元素.
6.LinkedTransferQueue
LinkedTransferQueue是一个由链表结构组成的无界阻塞TransferQueue队列.
7.LinkedBlockingQueue
LinkedBlockingQueue是一个由链表结构组成的双向阻塞队列.可以从队列的两端插入和移出元素.