共用方式為


.NET 中的平行程式設計:文件的指南

許多個人計算機和工作站有多個CPU核心,可讓多個線程同時執行。 若要利用硬體,您可以將程式代碼平行處理,以將工作分散到多個處理器。

過去,平行處理需要低層次的執行緒和鎖的操控。 Visual Studio 和 .NET 藉由提供運行時間、類別庫類型和診斷工具,來增強平行程序設計的支援。 這些功能是在 .NET Framework 4 中引進的,可簡化平行開發。 您可以在自然成語中撰寫有效率、精細且可調整的平行程序代碼,而不需要直接使用線程或線程集區。

下圖提供 .NET 中平行程序設計架構的高階概觀。

.NET 平行程式設計架構

科技 說明
工作平行程式庫 (TPL) 提供 System.Threading.Tasks.Parallel 類別的文件,其中包含 ForForEach 迴圈的平行版本,以及 System.Threading.Tasks.Task 類別的文件,這表示表達異步操作的慣用方式。
並行 LINQ (PLINQ) LINQ to Objects 的平行實作,可大幅改善許多案例中的效能。
平行程序設計 數據結構 提供安全線程集合類別、輕量型同步處理類型和延遲初始化類型的文件連結。
平行診斷工具 提供 Visual Studio 偵錯視窗(適用於工作和平行堆疊)以及 Concurrency Visualizer 的文件連結。
PLINQ 和 TPL 的自定義分割器 描述數據分割器的運作方式,以及如何設定預設數據分割器或建立新的數據分割器。
工作排程器 描述排程器的運作方式,以及設定預設排程器的方式。
PLINQ 和 TPL 中的 Lambda 運算式 提供 C# 和 Visual Basic 中 Lambda 表達式的簡短概觀,並示範如何在 PLINQ 和工作平行連結庫中使用這些運算式。
如需進一步閱讀 提供 .NET 中平行程序設計之其他資訊和範例資源的連結。

另請參閱