Queue Java
2016-02-24 22:22
337 查看
队列是一种数据结构.它有两个基本操作:在队列尾部加人一个元素,和从队列头部移除一个元素就是说,队列以一种先进先出的方式管理数据,如果你试图向一个 已经满了的阻塞队列中添加一个元素或者是从一个空的阻塞队列中移除一个元索,将导致线程阻塞.在多线程进行合作时,阻塞队列是很有用的工具。工作者线程可 以定期地把中间结果存到阻塞队列中而其他工作者线线程把中间结果取出并在将来修改它们。队列会自动平衡负载。如果第一个线程集运行得比第二个慢,则第二个 线程集在等待结果时就会阻塞。如果第一个线程集运行得快,那么它将等待第二个线程集赶上来。下表显示了jdk1.5中的阻塞队列的操作:
add 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常
remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
element 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
offer 添加一个元素并返回true 如果队列已满,则返回false
poll 移除并返问队列头部的元素 如果队列为空,则返回null
peek 返回队列头部的元素 如果队列为空,则返回null
put 添加一个元素 如果队列满,则阻塞
take 移除并返回队列头部的元素 如果队列为空,则阻塞
add 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常
remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
element 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
offer 添加一个元素并返回true 如果队列已满,则返回false
poll 移除并返问队列头部的元素 如果队列为空,则返回null
peek 返回队列头部的元素 如果队列为空,则返回null
put 添加一个元素 如果队列满,则阻塞
take 移除并返回队列头部的元素 如果队列为空,则阻塞
相关文章推荐
- response.setContentType与 request.setCharacterEncoding 区别
- Foundation框架下的常用类(NSNumber, NSValue, NSDate,NSDateFormatter)
- leetcode ---Unique Paths
- UEditor 报错:Uncaught ReferenceError: UE is not defined; Uncaught ReferenceError: UM is not defined
- ios-UI控件精讲之【6】-UIImageView
- ios-UI控件精讲之【5】-UIImage
- 通过Gradle来取的Jenkins的build
- UI美化概述
- suid seuid 当前用户ID 有效用户ID
- 5.UINavigationController
- web.xml is missing and <failOnMissingWebXml> is set to true
- iOS-UI-基本控件之UISwitch
- UICollectionView 使用 介绍
- String,StringBuffer,StringBuilder三者区别
- deque向量
- UITextField知多少
- 持续集成(CI)-build, test, and deploy & 自动化编译系统 mark & learn
- Android--UI控件的使用格式化
- iOS 开发之动画篇 - 从 UIView 动画说起
- 深入分析Parquet列式存储格式