C# Класс Disruptor.YieldingWaitStrategy

Yielding strategy that uses a Thread.yield() for EventProcessor s waiting on a barrier after an initially spinning. This strategy is a good compromise between performance and CPU resource without incurring significant latency spikes.
Наследование: IWaitStrategy
Показать файл Открыть проект

Открытые методы

Метод Описание
SignalAllWhenBlocking ( ) : void

Signal those IEventProcessor waiting that the cursor has advanced.

WaitFor ( long sequence, Sequence cursor, ISequence dependentSequence, ISequenceBarrier barrier ) : long

Wait for the given sequence to be available

This strategy is a good compromise between performance and CPU resource without incurring significant latency spikes.

Приватные методы

Метод Описание
ApplyWaitMethod ( ISequenceBarrier barrier, int counter ) : int

Описание методов

SignalAllWhenBlocking() публичный Метод

Signal those IEventProcessor waiting that the cursor has advanced.
public SignalAllWhenBlocking ( ) : void
Результат void

WaitFor() публичный Метод

Wait for the given sequence to be available

This strategy is a good compromise between performance and CPU resource without incurring significant latency spikes.

public WaitFor ( long sequence, Sequence cursor, ISequence dependentSequence, ISequenceBarrier barrier ) : long
sequence long sequence to be waited on.
cursor Sequence Ring buffer cursor on which to wait.
dependentSequence ISequence dependents further back the chain that must advance first
barrier ISequenceBarrier barrier the is waiting on.
Результат long