Sdílet prostřednictvím


Paralelní programování v .NET: Průvodce dokumentací

Mnoho osobních počítačů a pracovních stanic má několik jader procesoru, které umožňují souběžné spouštění více vláken. Pokud chcete využít výhod hardwaru, můžete paralelizovat kód a distribuovat práci napříč více procesory.

V minulosti paralelizace vyžadovala manipulaci s vlákny a zámky nízké úrovně. Visual Studio a .NET vylepšují podporu paralelního programování tím, že poskytují modul runtime, typy knihoven tříd a diagnostické nástroje. Tyto funkce, které byly zavedeny v rozhraní .NET Framework 4, zjednodušují paralelní vývoj. V přirozeném idiomu můžete psát efektivní, jemně odstupňovaný a škálovatelný paralelní kód, aniž byste museli pracovat přímo s vlákny nebo fondem vláken.

Následující obrázek obsahuje základní přehled architektury paralelního programování v .NET.

Architektura paralelního programování .NET

Technologie Popis
Knihovna TPL (Task Parallel Library) Poskytuje dokumentaci pro System.Threading.Tasks.Parallel třídu, která zahrnuje paralelní verze For a ForEach smyčky, a také pro System.Threading.Tasks.Task třídu, která představuje upřednostňovaný způsob vyjádření asynchronních operací.
Parallel LINQ (PLINQ) Paralelní implementace LINQ to Objects, která výrazně zlepšuje výkon v mnoha scénářích.
Datové struktury pro paralelní programování Poskytuje odkazy na dokumentaci pro typy kolekcí bezpečné pro práci s vlákny, lehké synchronizační typy a typy pro opožděnou inicializaci.
Paralelní diagnostické nástroje Obsahuje odkazy na dokumentaci k oknům ladicího programu sady Visual Studio zaměřeným na úlohy, paralelní zásobníky a na Concurrency Visualizer.
Vlastní rozdělovače pro PLINQ a TPL Popisuje, jak fungují dělicí nástroje a jak nakonfigurovat výchozí dělicí nástroje nebo vytvořit nový dělicí nástroj.
Plánovače úloh Popisuje, jak plánovače fungují a jak se můžou nakonfigurovat výchozí plánovače.
Výrazy lambda v PLINQ a TPL Poskytuje stručný přehled výrazů lambda v jazyce C# a Visual Basic a ukazuje, jak se používají v PLINQ a paralelní knihovně úloh.
Další čtení Obsahuje odkazy na další informace a ukázkové prostředky pro paralelní programování v .NET.

Viz také