Disruptor 源码分析(7) 不同消费者类型的区别
disruptor不同消费者类型的区别
EventProcessor有3个实现类
BatchEventProcessor 多线程并发执行,不同线程执行不同是不同的event
WorkProcessor 多线程排队领event然后再执行,不同线程执行不同是不同的event.但是多了个排队领event的过程,这个是为了减少对生产者队列查询的压力吧.
NoOpEventProcessor 这个不出来任何事情 我们就不管他了.
WorkProcessor的run方法中有这一段
public RingBuffer<T> start(final Executor executor) for (WorkProcessor<?> processor : workProcessors) { executor.execute(processor);