Blocking Queue

BlockingQueue

BlockingQueue 不接受 null ,试图 addputoffer 一个 null 元素时,会抛出 NullPointerExceptionnull 被用作指示 poll 操作失败的警戒值

BlockingQueue 四种形的操作

  • 在操作可以成功前,无限期地阻塞当前线程
  • 抛出一个异常
  • 返回一个特殊值(nullfalse,具体取决于操作)
  • 阻塞指定的时间
阻塞 抛出异常 特殊值 超时
插入 put add(e) IllegalArgumentException offer(e) offer(e,time,unit)
移除 take remove NoSuchElementException poll() poll(time, unit)
检查
获取但不移除
- element
NoSuchElementException
peek -

阻塞队列的实现