コード例 #1
0
        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));
        }
コード例 #2
0
        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));
        }
コード例 #3
0
        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));
        }