SingleProcessor

The SingleProcessor class is a generic class that provides parallel processing functionality for collections of single elements. It allows users to easily perform parallel operations on a collection of items and return the results as different types of collections, such as ConcurrentBag, ConcurrentDictionary, or a single item.

ParallelProcess

This method processes the collection in parallel and invokes the provided callback for each item.

Example:

var singleProcessor = new SingleProcessor<Item, Category>(items, item => item.Category);
singleProcessor.ParallelProcess(item => {
    Console.WriteLine($"Processing item: {item.Name}");
});

ParallelProcessToBag

This method processes the collection in parallel and adds the results to a ConcurrentBag by invoking the provided callback for each item.

Example:

var singleProcessor = new SingleProcessor<Item, Category>(items, item => item.Category);
ConcurrentBag<string> resultBag = singleProcessor.ParallelProcessToBag(item => {
    return $"Item: {item.Name}, Category: {item.Category}";
});

ParallelProcessToDictionary

This method processes the collection in parallel and adds the results to a ConcurrentDictionary by invoking the provided callback for each item.

Example:

ParallelProcessKeys

This method processes the keys of the collection in parallel and invokes the provided callback for each key.

Example:

ParallelProcessKeysToBag

This method processes the keys of the collection in parallel and adds the results to a ConcurrentBag by invoking the provided callback for each key.

Example:

ParallelProcessKeysToDictionary

This method processes the keys of the collection in parallel and adds the results to a ConcurrentDictionary by invoking the provided callback for each key.

Example:

ParallelToNewSingleProcessor

This method processes the keys of the collection in parallel and returns a new SingleProcessor instance containing the results.

Example:

ParallelToNewGroupedProcessor

This method processes the keys of the collection in parallel and returns a new GroupProcessor instance containing the results, grouped by the provided expression.

Example:

AllKeys

Returns all keys in the processor as an enumerable.

Example:

Last updated