1

现在我正在使用disruptor,我得到一个consumer-productor的简单示例。它运行完美,但我不知道buffersize的含义,我应该设置它的大小?

私有静态最终 int BUFFER_SIZE = 4;

private final RingBuffer<StockEvent> ringBuffer =
    new RingBuffer<StockEvent>(StockEvent.EVENT_FACTORY,
                               new MultiThreadedLowContentionClaimStrategy(BUFFER_SIZE),
                               new YieldingWaitStrategy());
private final SequenceBarrier sequenceBarrier = ringBuffer.newBarrier();

BUFFER_SIZE 是什么意思?

4

1 回答 1

1

RingBuffer 具有固定的数组分配大小。它需要一个预设的缓冲区大小来启动所需的分配。建议将此大小保持在 11 以上(记住 bufferSize 应该是 2 的幂),但这取决于主机和您的架构。

于 2012-11-27T13:52:27.553 回答