public OutputBlock( ILogger logger, Action <IFlow> successHandler) { CancellationTokenSource = new CancellationTokenSource(TimeSpan.FromMinutes(1)); var options = new ExecutionDataflowBlockOptions { CancellationToken = CancellationTokenSource.Token, MaxDegreeOfParallelism = Environment.ProcessorCount, BoundedCapacity = DataflowBlockOptions.Unbounded, }; FailureBlock = new FailureBlock(logger, options); SuccessBlock = new SuccessBlock(logger, options, successHandler); Logger = logger; }
void IDataflowBlock.Fault(Exception exception) { SuccessBlock.Fault(exception); FailureBlock.Fault(exception); }
void IDataflowBlock.Complete() { SuccessBlock.Complete(); FailureBlock.Complete(); }