Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
Collapse All/Expand All Collapse All
.NET Framework 4
Parallel Programming in the .NET Framework

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Many personal computers and workstations manufactured today have two or four cores, or CPUs, which enable them to execute multiple threads simultaneously. Computers in the near future are expected to have significantly more cores. To take advantage of the hardware of today and tomorrow, software developers can parallelize their code to distribute work across multiple processors. In the past, parallelization required low-level manipulation of threads and locks. Microsoft Visual Studio 2010 and .NET Framework 4 Beta 2 enhance support for parallel programming with a new runtime, new class library types, and diagnostic tools. These features simplify parallel development and enable developers to write efficient, fine-grained, and scalable parallel code in a natural idiom without having to work directly with threads, or the thread pool. The following illustration provides a high-level overview of the parallel programming architecture in .NET Framework 4 Beta 2:

.NET Parallel Programming Architecture

Support for parallel programming in Microsoft Visual Studio 2010 and .NET Framework 4 Beta 2 is categorized into these four areas:

Technology

Description

Task Parallel Library Overview

Includes parallel implementations of for and foreach loops (For and For Each in Visual Basic). Enables you to define concurrent, asynchronous tasks without having to work with threads, locks, or the thread pool.

Parallel LINQ (PLINQ)

A parallel implementation of LINQ to Objects that significantly improves performance in many scenarios.

Data Structures for Parallel Programming

Includes high-performance collection classes that are lock-free and thread-safe. Also includes other lightweight objects for synchronization and lazy initialization.

Parallel Diagnostic Tools

Includes debugger windows for tasks and parallel stacks, and concurrency views in the Visual Studio Team System Profiler that you can use to debug and to tune the performance of parallel code.

© 2009 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks | Privacy Statement | Site Feedback
Page view tracker