C/C++教程

LinkedBlockingQueue

本文主要是介绍LinkedBlockingQueue,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

LinkedBlockingQueue

LinkedBlockingQueue是一个单向链表实现的阻塞队列。该队列按 FIFO(先进先出)排序元素,新元素插入到队列的尾部,并且队列获取操作会获得位于队列头部的元素。LinkedBlockingQueue还是可选容量的(防止过度膨胀),即可以指定队列的容量。如果不指定,默认容量大小等于Integer.MAX_VALUE。

数据结构

在这里插入图片描述

常用方法

一、添加元素

1、add 方法:如果队列已满,报java.lang.IllegalStateException: Queue full 错误

2、offer 方法:如果队列已满,程序正常运行,只是不再新增元素

3、put 方法:如果队列已满,阻塞

二、取元素

1、poll 方法:弹出队顶元素,队列为空时返回null

2、peek 方法:返回队列顶元素,但顶元素不弹出,队列为空时返回null

3、take 方法:当队列为空,阻塞

这篇关于LinkedBlockingQueue的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!