public BatchedPoller(RingBuffer <DataEvent> ringBuffer, int batchSize) { _poller = ringBuffer.NewPoller(); ringBuffer.AddGatingSequences(_poller.Sequence); _polledData = new BatchedData(batchSize); }
private PollState LoadNextValues(EventPoller <DataEvent> poller, BatchedData batch) { return(poller.Poll((ev, sequence, endOfBatch) => { var item = ev.CopyOfData(); return item != null && batch.AddDataItem(item); })); }
public BatchedPoller(RingBuffer <DataEvent> ringBuffer, int batchSize) { _poller = ringBuffer.NewPoller(); ringBuffer.AddGatingSequences(_poller.Sequence); if (batchSize < 1) { batchSize = 20; } _maxBatchSize = batchSize; _polledData = new BatchedData(_maxBatchSize); }