This recipe shows how to create a custom aggregation function for a PLINQ query.
To step through this recipe, you will need Visual Studio 2012. There are no other prerequisites. The source code for this recipe can be found in BookSamples\Chapter7\Recipe6
.
To understand the workings of custom aggregation function for a PLINQ query, perform the following steps:
Start Visual Studio 2012. Create a new C# Console Application project.
In the
Program.cs
file add the followingusing
directives:using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Threading;
Add the following code snippet below the
Main
method:static ConcurrentDictionary<char, int> AccumulateLettersInformation(ConcurrentDictionary<char, int> taskTotal , string item) { foreach (var c in item) { if (taskTotal.ContainsKey(c)) { taskTotal[c] = taskTotal[c] + 1; } else...