Blockingqueue几个方法总结

      在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。经过这些高效而且线程安全的队列类,为咱们快速搭建高质量的多线程程序带来极大的便利。本文简要介绍下BlockingQueue接口中几个方法的做用及区别。安全

     一、add(E e)多线程

      在不违反容量限制的状况下,可当即将指定元素插入此队列,成功返回true,当无可用空间时候,返回IllegalStateException异常。线程

     二、offer(E e)接口

      在不违反容量限制的状况下,可当即将指定元素插入此队列,成功返回true,当无可用空间时候,返回false。队列

      三、put(E e)it

      直接在队列中插入元素,当无可用空间时候,阻塞等待。io

      四、offer(E e, long time, timeunit unit)程序

      将给定元素在给定的时间内设置到队列中,若是设置成功返回true, 不然返回false。方法

      五、E take()im

      获取并移除队列头部的元素,无元素时候阻塞等待。

      六、E poll( long time, timeunit unit)

      获取并移除队列头部的元素,无元素时候阻塞等待指定时间。

相关文章
相关标签/搜索