美文网首页
Android LinkedBlockingDeque 双向阻塞

Android LinkedBlockingDeque 双向阻塞

作者: 水天滑稽天照八野滑稽石 | 来源:发表于2020-07-07 16:32 被阅读0次

前言

最近并发编程用到就简单做下笔记

何为双向阻塞队列

  • 队列 一种常见的先进先出,后进后出的数据结构
  • 阻塞队列 当队列为空的时候,从队列中获取元素的操作将会被阻塞;当队列是满的时候,往队列里添加元素的操作会被阻塞
  • 双向队列 头部和尾部都可以进行插入和删除的操作
    以上3个特性和起来就是双向阻塞队列,因为2边都可以进行操作,所以在多线程使用时就会好上一些

构造方法

 public LinkedBlockingDeque() //默认容量为Integer.MAX_VALUE
 public LinkedBlockingDeque(int capacity) //指定容量
 public LinkedBlockingDeque(Collection<? extends E> c)

用法

putFirst() //指定的元素插入队列的开头
putLast()   // 指定的元素插入到队列的末尾
pollFirst()  //获取并移除此队列的首节点,若不存在,则返回null
pollLast() //获取并移除此双端队列的尾节点,若不存在,则返回null
takeFirst() //检索并删除此deque的第一个元素,如有必要等待,直到元素可用
takeLast() //检索并删除此deque的最后一个元素,如有必要等待,直到元素可用。

相关文章

网友评论

      本文标题:Android LinkedBlockingDeque 双向阻塞

      本文链接:https://www.haomeiwen.com/subject/ovqnqktx.html