数据结构
数据结构
code_wang_hui
每天一篇文章
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构
数据结构类图ListSetMapQueuePriorityQueueBlockQueueStack类图从上面的结构可以分一下几类:ListSetMapQueueStackListSetMapQueuePriorityQueue无界优先级队列, 内部通过数组实现; 支持插入,和获取队首元素的操作,内部实现了自动排优先级的操作,优先级高的会放置在队首。BlockQ...原创 2020-05-07 09:52:14 · 227 阅读 · 0 评论 -
BlockingQueue
BlockingQueueBlockingQueue类图结构源码阻塞队列的成员BlockingQueue在Queue的基础上,它还支持在检索元素时等待队列变为非空的操作,以及在存储元素时等待队列中的空间变为可用的操作类图结构源码public interface BlockingQueue<E> extends Queue<E> { //将给定元素设置...原创 2020-04-10 21:04:23 · 143 阅读 · 0 评论 -
PriorityBlockingQueue
PriorityBlockingQueue介绍使用源码解析介绍一个支持线程优先级排序的无界队列,默认自然序进行排序,也可以自定义实现compareTo()方法来指定元素排序规则,不能保证同优先级元素的顺序。使用使用较简单就不介绍了。源码解析ReentrantLock+Condition原理一个ReentrantLock一个Condition private final...原创 2020-04-10 17:30:17 · 162 阅读 · 0 评论 -
LinkedBlockingQueue
LinkedBlockingQueue介绍使用源码解析介绍可选有界阻塞队列基于链表,该队列遵循FIFO。存入队尾,取出队首。使用使用较简单就不介绍了。源码解析ReentrantLock+Condition原理两个ReentrantLock两个Condition //取锁,控制取数据 private final ReentrantLock takeLock = new...原创 2020-04-10 17:13:52 · 276 阅读 · 1 评论 -
ArrayBlockingQueue
ArrayBlockingQueue介绍使用源码解析介绍有界阻塞队列,该队列遵循FIFO。存入队尾,取出队首。使用使用较简单就不介绍了。源码解析offer(E e) (add(E e)和offer一样)如果容量已满,则返回false,添加失败 public boolean offer(E e) { checkNotNull(e); final...原创 2020-04-09 19:34:56 · 142 阅读 · 0 评论 -
DelayQueue
DelayQueue介绍使用源码解析介绍无界延迟队列,存元素的过程没有限制个数,会唤醒等待;取元素得时候,如果队列没有数据,则等待,如果队列中有数据,且队首需要等待,则进行超时等待。使用import java.time.LocalDateTime;import java.time.format.DateTimeFormatter;import java.util.concurrent....原创 2020-04-09 19:01:04 · 156 阅读 · 0 评论
分享