linkedblockingdeque用法
时间: 2023-07-27 15:05:42 浏览: 78
JDK容器学习之Queue:LinkedBlockingQueue
LinkedBlockingDeque是Java中的一个双端队列实现,可以在队列的两端进行插入和删除操作。它是线程安全的,因此适用于多线程环境。
使用LinkedBlockingDeque的步骤如下:
1. 创建LinkedBlockingDeque对象:
```java
LinkedBlockingDeque deque = new LinkedBlockingDeque();
```
2. 插入元素:
```java
deque.offerFirst("first");
deque.offerLast("last");
```
3. 删除元素:
```java
deque.pollFirst();
deque.pollLast();
```
4. 获取队列大小:
```java
deque.size();
```
5. 获取队列头部元素:
```java
deque.peekFirst();
```
6. 获取队列尾部元素:
```java
deque.peekLast();
```
需要注意的是,LinkedBlockingDeque的容量是没有限制的,因此插入操作永远不会阻塞。但是,如果队列为空,删除操作会阻塞直到队列中有元素。如果队列已满,插入操作会阻塞直到队列中有空间。因此,使用LinkedBlockingDeque时需要注意这些特性。
阅读全文