无锁阻塞队列
2013-11-04 00:00
260 查看
该组件内部是一个环形数组,受Disruptor启发而创建! Disruptor是一个优秀的无锁队列,内部使用环形数组避免java对象的频繁受垃圾回收器回收。Disruptor本身在使用时会过于复杂而且是基于回调的编程方式,不如jdk自带的BlockingQueue使用方便。
jdk自带的BlockingQueue的缺点就是锁带来的性能损耗!
另外jdk还自带一个无锁非阻塞队列ConcurrentLinkedQueue,当它用在生产者消费者模型时,如果消费者消费较慢,生产者生产较快,ConcurrentLinkedQueue里的对象会无限增加最后内存溢出!
软件首页http://code.google.com/p/unlock-blocking-queue/
jdk自带的BlockingQueue的缺点就是锁带来的性能损耗!
另外jdk还自带一个无锁非阻塞队列ConcurrentLinkedQueue,当它用在生产者消费者模型时,如果消费者消费较慢,生产者生产较快,ConcurrentLinkedQueue里的对象会无限增加最后内存溢出!
软件首页http://code.google.com/p/unlock-blocking-queue/
相关文章推荐
- 并发新特性—阻塞队列和阻塞栈
- 使用阻塞队列实现生产者-消费者模式——Java实现
- Java实现阻塞队列的两种方式
- Java并发编程:阻塞队列
- 并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
- Java多线程 阻塞队列和并发集合
- 并发编程复习(六):使用wait和notify模拟阻塞队列
- [arm驱动]linux等待队列阻塞中断IO的应用 推荐
- Java并发编程实践笔记之—阻塞队列和生产者-消费者模式(Blocking Queues and the Producer-consumer Pattern)
- Java并发编程:阻塞队列
- (java多线程与并发)java并发库中的阻塞队列--BlockingQueue
- 多线程阻塞队列缓冲池
- java并发编程(二十一)--并发新特性—阻塞队列和阻塞栈
- linkedBlockingQueue实现事件阻塞队列
- 新特征-阻塞队列
- c++编程笔记之阻塞队列
- 新特征-阻塞队列
- 探讨SQL Server并发处理队列数据不阻塞解决方案
- [改善Java代码]适当设置阻塞队列长度
- 从零学习JAVA多线程(四):阻塞队列和生产者消费者模式