Question

I am studying Disruptor in Java. I do not understand what's meaning of gating sequence. I know it core part is ring buffer and every buffer is associated with a sequence number.

Était-ce utile?

La solution 2

Actually the core part of LMAX's implementation is the Sequencer and its Sequences. And so the ringBuffer implement those. The gatingSequences that you are referring to act as a cursor to each Sequencer that is "Subscribed" to the targeted ringBuffer (or other Sequencer). So that's how a Sequencer can have multiple cursors for its connected Sequencers (and let them touch the next sequence by just calling tryNext() ).

Cheers!

Autres conseils

The purpose of gating sequences is to gate publishers to prevent the RingBuffer from wrapping.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top