BlackWaspTM

This web site uses cookies. By using the site you accept the cookie policy.This message is for compliance with the UK ICO law.

<< Previous | 1 | 2 | Next >> |
Parallel ProgrammingParallel Programming
This is the first in a series of articles introducing the parallel programming techniques that are available in the C# programming language and the .NET framework version 4.0. The first part describes some of the concepts of parallel programming.
Parallel For LoopParallel For Loop
The second part of the Parallel Programming in .NET tutorial examines the parallel for loop. This allows the execution of a specific number of loop iterations in parallel, with data decomposition handled automatically by the Task Parallel Library.
Parallel ForEach LoopParallel ForEach Loop
The third part of the Parallel Programming in .NET tutorial examines the parallel foreach loop. This iterates through the items in a collection, executing the same code for each with the potential for the data to be decomposed and processed in parallel.
Terminating Parallel LoopsTerminating Parallel Loops
The fourth part of the Parallel Programming in .NET tutorial looks at the early termination of parallel loops. Unlike sequential loops, which can be exited with the break command, there are considerations when stopping loops that run on multiple cores.
Synchronisation in Parallel LoopsSynchronisation in Parallel Loops
The fifth part of the Parallel Programming in .NET tutorial continues the description of parallel loops. This article looks at the synchronisation problems of aggregation in parallel loops and how to overcome them with locking and local state values.
Exceptions and Parallel LoopsExceptions and Parallel Loops
The sixth part of the Parallel Programming in .NET tutorial is the last instalment that examines the parallel loops. This article discusses how exceptions are thrown by code within a parallel loop and how they can be handled.
Using Parallel.InvokeUsing Parallel.Invoke
The seventh part of the Parallel Programming in .NET tutorial starts a look at the options that the Task Parallel Library provides for task decomposition. This article describes the Parallel.Invoke method, which can execute several delegates in parallel.
Creating Parallel TasksCreating Parallel Tasks
The eighth part of the Parallel Programming in .NET tutorial starts an examination of the Task class. This allows the programmer to explicitly create tasks designed for parallel execution. This initial article explains how tasks are instantiated and run.
Waiting for Parallel Tasks to CompleteWaiting for Parallel Tasks to Complete
The ninth part of the Parallel Programming in .NET tutorial considers that the parallel nature of tasks means that it is not possible to assume that tasks have completed. It describes how to synchronise tasks and capture their unhandled exceptions.
Obtaining Results from Parallel TasksObtaining Results from Parallel Tasks
The tenth part of the Parallel Programming in .NET tutorial examines the generic Task<T> class. This is a subclass of the Task class seen previously that permits a result to be generated and accessed from the calling thread.
<< Previous | 1 | 2 | Next >> |