阻塞队列
BlockingQueue:阻塞队列,继承自 Queue。
ArrayBlockingQueue:JDK1.5,基于定长的数组,有界队列。创建时需指定容量,支持公平和非公平锁访问机制。
LinkedBlockingQueue:JDK1.5,基于单向链表,无界队列,近似无界。创建时指定容量或默认 Integer.MAX_VALUE,仅支持非公平锁访问机制。<br>
PriorityBlockingQueue:支持优先级排序的无界阻塞队列。
SynchronousQueue:JDK1.6,同步队列,一个不存储元素的阻塞队列。
DelayQueue:JDK1.8,基于PriorityQueue,一个支持延迟获取元素的阻塞队列。
TransferQueue:JDK1.7,一个支持更多操作的阻塞队列。
阻塞队列就是典型的生产者-消费者模型,调用 put、take、offfer、poll 等 API 即可实现多线程之间的生产和消费。