首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

Disruptor 源码分析(二) Disruptor的入口类

2013-09-28 
Disruptor 源码分析(2)Disruptor的入口类[sizemedium]Disruptor类是启动类.我们可以通过类似这样构造一个

Disruptor 源码分析(2) Disruptor的入口类
[size=medium]Disruptor类是启动类.我们可以通过类似这样构造一个Disruptor对象

 public RingBuffer<T> start()    {        Sequence[] gatingSequences = consumerRepository.getLastSequenceInChain(true);        ringBuffer.addGatingSequences(gatingSequences);


getLastSequenceInChain就是获取所有消费者的位置信息.
ringBuffer.addGatingSequences就是把消费者的位置信息引用注入到生产者.


消费者获取生成者的位置信息
消费者是通过SequenceBarrier来管理位置信息的,
final SequenceBarrier barrier = ringBuffer.newBarrier(barrierSequences);
ringBuffer中有生产者的位置信息,存在sequencer中,
这样 SequenceBarrier的cursorSequence就是生产者的位置信息.








热点排行