Programmation parallèle dans le .NET Framework

De nombreux ordinateurs personnels et stations de travail ont deux ou quatre cœurs (c-à-d, unités centrales) qui permettent à plusieurs threads de s'exécuter simultanément. Les ordinateurs, dans un proche avenir, sont supposés être dotés d'un nombre significativement plus élevé de cœurs. Pour tirer parti du matériel actuel et futur, vous pouvez paralléliser votre code pour distribuer le travail sur plusieurs processeurs. Dans le passé, la parallélisation nécessitait un niveau peu élevé de manipulation de threads et de verrous. Visual Studio 2010 et le .NET Framework 4 améliorent la prise en charge de la programmation parallèle en fournissant une nouvelle exécution, des nouveaux types de bibliothèques de classes et de nouveaux outils de diagnostics. Ces fonctionnalités simplifient le développement parallèle et vous permettent d'écrire du code parallèle efficace, à grains fins et évolutif dans un idiome naturel sans devoir utiliser directement des threads ou le pool de threads. L'illustration suivante fournit une vue d'ensemble générale de l'architecture de programmation parallèle dans le .NET Framework 4.

Architecture de programmation parallèle du .NET

Rubriques connexes

Technologie

Description

Bibliothèque parallèle de tâches

Fournit la documentation pour la classe System.Threading.Tasks.Parallel, qui inclut des versions parallèles de For et des boucles ForEach, et également pour la classe System.Threading.Tasks.Task, qui représente la meilleure façon d'exprimer des opérations asynchrones.

Parallel LINQ (PLINQ)

Implémentation parallèle de LINQ to Objects qui améliore de manière significative la performance dans de nombreux scénarios.

Structures de données pour la programmation parallèle

Fournit des liens vers la documentation pour les classes de collection thread-safe, les types de synchronisation légers et les types pour l'initialisation tardive.

Outils de diagnostic parallèles

Fournit des liens vers la documentation relative aux fenêtres du débogueur Visual Studio pour les tâches et les piles parallèles, et le Visualiseur concurrence, qui se compose d'un jeu de vues dans le profileur Visual Studio Application Lifecycle Management que vous pouvez utiliser pour déboguer et régler la performance du code parallèle.

Partitionneurs personnalisés pour PLINQ et la bibliothèque parallèle de tâches (TPL)

Décrit le fonctionnement des partitionneurs et comment configurer les partitionneurs par défaut ou en créer.

Fabriques de tâches

Décrit le rôle de la classe System.Threading.Tasks.TaskFactory.

Planificateurs de tâches

Décrit le fonctionnement des planificateurs et comment les planificateurs par défaut peuvent être configurés.

Expressions lambda en PLINQ et dans la bibliothèque parallèle de tâches

Fournit une vue d'ensemble d'expressions lambda en C# et Visual Basic, et affiche comment elles sont utilisées dans PLINQ et la bibliothèque parallèle de tâches.

Pour obtenir des informations supplémentaires (programmation parallèle)

Fournit des liens vers la documentation supplémentaire et des exemples de ressources pour la programmation parallèle dans le .NET Framework.

Développement avancé du .NET Framework

Nœud de niveau supérieur pour les rubriques avancées telles que le threading et la programmation parallèle.

Voir aussi

Autres ressources

Modèles de programmation parallèle : présentation et application des modèles parallèles avec le .NET Framework 4 (page éventuellement en anglais)