java高并发系列
这是java高并发系列第25篇文章。 环境:jdk1.8。 本文内容 掌握Queue、BlockingQueue接口中常用的方法 介绍6中阻塞队列,及相关场景示例 重点掌握4种常用的阻塞队列 Queue接口 队列是一种先进先出(FIFO)的数据结构,java中用 Queue 接口来表示队列。 Queue 接口中定义了6个方法: public interface Queue<E> extends Collection<E> { boolean add(e); boolean offer(E e); E remove(); E poll(); E element(); E peek(); } 每个 Queue 方法都有两种形式: (1)如果操作失败则抛出异常, (2)如果操作失败,则返回特殊值( null 或 false ,具体取决于操作),接口的常规结构如下表所示。 操作类型 抛出异常 返回特殊值 插入 add(e) offer(e) 移除 remove() poll() 检查 element() peek() Queue 从 Collection 继承的 add 方法插入一个元素,除非它违反了队列的容量限制,在这种情况下它会抛出 IllegalStateException ; offer 方法与 add 不同之处仅在于它通过返回 false 来表示插入元素失败。 remove 和