JUC - LinkedBlockingQueue源码解析 - 多图警告

LinkedBlockingQueue - 基于链表的阻塞队列

啥是阻塞:
 ① 队列已经容量满,在put的话,该线程一直等待,直到容量不满才可以put进去
 ② 队列已经无元素可取,在take的话,该线程一直等待,直到队列有元素才可以取元素

继承关系

在这里插入图片描述

源码解析

take、poll的方法跟下面解析的put、offer方法思路几乎一模一样,就不在解释了。有关的Stream流部分就不分析,感觉好复杂,有时间再看看stream流源码在一同分析LBQ的流源码

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_39651356/article/details/114887394