Programmazione parallela in .NET: Guida alla documentazione

Un numero elevato di personal computer e workstation è dotato di diversi core CPU che consentono l'esecuzione simultanea di più thread. Per sfruttare l'hardware, è possibile parallelizzare il codice per distribuire il lavoro su più processori.

In passato la parallelizzazione richiedeva la modifica di basso livello di thread e blocchi. Visual Studio e .NET migliorano il supporto per la programmazione parallela fornendo un runtime, tipi di libreria di classi e strumenti di diagnostica. Queste funzionalità, introdotte in .NET Framework 4, semplificano lo sviluppo parallelo. È possibile scrivere codice parallelo efficiente, con granularità fine e scalabile in un linguaggio naturale senza dover usare direttamente i thread o il pool di thread.

La figura seguente offre una panoramica generale dell'architettura di programmazione parallela in .NET.

.NET Parallel Programming Architecture

Tecnologia Descrizione
Task Parallel Library (TPL) Viene fornita documentazione per la classe System.Threading.Tasks.Parallel che include versioni parallele dei cicli For e ForEach, nonché per la classe System.Threading.Tasks.Task che rappresenta la modalità preferita per l'espressione di operazioni asincrone.
Parallel LINQ (PLINQ) Un'implementazione parallela di LINQ to Objects che migliora significativamente le prestazioni in molti scenari.
Strutture di dati per la programmazione parallela Vengono forniti collegamenti alla documentazione per classi di raccolte thread-safe, tipi di sincronizzazioni leggere e tipi per l'inizializzazione differita.
Strumenti di diagnostica parallela Vengono forniti collegamenti alla documentazione per le finestre del debugger di Visual Studio per le attività e gli stack in parallelo e per il Visualizzatore di concorrenza.
Partitioner personalizzati per PLINQ e TPL Viene descritto come funzionano i partitioner e come configurare i partitioner predefiniti o creare un nuovo partitioner.
Utilità di pianificazione delle attività Viene descritto come funziona l'utilità di pianificazione e come possono essere configurate le utilità di pianificazione predefinite.
Espressioni lambda in PLINQ e TPL Viene fornita una breve panoramica delle espressioni lambda in C# e Visual Basic e ne viene mostrato l'utilizzo in PLINQ e Task Parallel Library.
Per altre informazioni Vengono forniti collegamenti a informazioni aggiuntive e risorse di esempio per la programmazione parallela in .NET.

Vedi anche