4.0 Hot! - Net Fx

// Pipeline stage interface public interface IPipelineStage<TInput, TOutput> { Task<TOutput> ProcessAsync(TInput input, CancellationToken token); string StageName { get; } }

// Stage 1: Data Validation public class ValidationStage : IPipelineStage<WorkItem, WorkItem> { public string StageName => "Validation"; net fx 4.0

// Stage 2: Data Transformation public class TransformationStage : IPipelineStage<WorkItem, WorkItem> { public string StageName => "Transformation"; string StageName { get

public async Task<List<WorkItem>> ProcessItemsAsync( IEnumerable<WorkItem> items, CancellationToken cancellationToken, IProgress<string> progress = null) { var inputQueue = new BlockingCollection<WorkItem>(); var results = new ConcurrentBag<WorkItem>(); // Start producer task var producerTask = Task.Run(() => { foreach (var item in items) { cancellationToken.ThrowIfCancellationRequested(); inputQueue.Add(item, cancellationToken); } inputQueue.CompleteAdding(); }, cancellationToken); { public string StageName =&gt

About The Author

Luckinson Akpos

Akpos is an internet enthusiast, who loves advancing God’s kingdom, and has a special interest in personal development. He is a privileged editor/publisher with Flatimes. You can send in your GOSPEL MUSIC, ARTICLES/MESSAGES to flatimesng@gmail.com