📅  最后修改于: 2023-12-03 15:31:50.439000             🧑  作者: Mango
BlockingDeque是Java集合框架中的一种特殊队列,它可以阻塞读写操作。addFirst() 方法用于将元素添加到队列的头部,如果队列已满,则会一直阻塞等待空间。
void addFirst(E e) throws InterruptedException
以下示例演示了如何使用addFirst()方法将元素添加到BlockingDeque中:
import java.util.concurrent.BlockingDeque;
import java.util.concurrent.LinkedBlockingDeque;
public class BlockingDequeExample {
public static void main(String[] args) {
// 创建一个容量为10的BlockingDeque
BlockingDeque<String> deque = new LinkedBlockingDeque<>(10);
// 添加元素到队列头部
try {
deque.addFirst("第一个元素");
deque.addFirst("第二个元素");
deque.addFirst("第三个元素");
} catch (InterruptedException e) {
e.printStackTrace();
}
// 打印队列头部的元素
System.out.println(deque.peekFirst());
}
}
输出:
第三个元素
以上示例中,我们首先创建了一个容量为10的BlockingDeque,并使用addFirst()方法将三个元素添加到队列的头部。最后,我们打印了队列头部的元素,输出结果应该是第三个元素。如果队列已满时尝试添加元素,线程将会一直阻塞等待空间。