public IPropagatorDataflowBuilder <TInput, TOutput[]> Batch(int batchSize, DataflowBatchOptions batchOptions = default(DataflowBatchOptions)) { var batchBlock = new BatchBlock <TOutput>(batchSize, batchOptions.BatchBlockOptions); LinkHelper.Link(_finalSourceBlock, batchBlock, batchOptions.LinkOptions); return(new PropagatorDataflowBuilder <TInput, TOutput[]>(_originalTargetBlock, _finalSourceBlock, batchBlock, _propagateCompletion)); }
public ISourceDataflowBuilder <TOutput[]> Batch(int batchSize, DataflowBatchOptions batchOptions) { var batchBlock = new BatchBlock <TOutput>(batchSize, batchOptions.BatchBlockOptions); LinkHelper.Link(_finalSourceBlock, batchBlock, batchOptions.LinkOptions); return(new SourceDataflowBuilder <TOutput[]>(_originalSourceBlock, _finalSourceBlock, batchBlock, _propagateCompletion)); }
public ISourceDataflowBuilder <TOutput[]> Batch(int batchSize, DataflowBatchOptions batchOptions = default(DataflowBatchOptions)) { var batchBlock = new BatchBlock <TOutput>(batchSize, batchOptions.BatchBlockOptions); var propagateCompletion = Link(batchBlock, batchOptions.LinkOptions, null); var sourceWrapper = new MultipleSourceDataflowWrapper(_sourceBlocks); return(new SourceDataflowBuilder <TOutput[]>(sourceWrapper, sourceWrapper, batchBlock, propagateCompletion)); }