LinkedBlockingQueue与LinkedBlockingDueue的关系

LinkedBlockingQueue关键点:
0. 单链表
1. ReentrantLock重入锁(两把,入队和出队各一把)
2. 入队方法add/put/offer
3. 出队方法take(等)/poll(不等)
4. romove方法
5. size的统计

LinkedBlockingDueue的关键点:
0. 双向链表
1. 功能全覆盖
2. 可做堆栈使用
3. 是个容量可选(最大为Integer.MAX_VALUE)的阻塞队列,且线程安全
4. ReentrantLock实现不过只有一把锁
5. 出/入队方法一大堆

总结如斯:

首先,二者都是线程安全以及阻塞等待的并发容器类。其实LinkedBlockingDueue是LinkedBlockingQueue的升级版,不仅在使用上最大程度的方便用户,还在底层做一些细微的调整。如使用双链表、把两个重入锁改成一个等。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值