C# 中基於執行緒的並行性


在 C# 中,任務並行性將任務劃分開來。然後將這些任務分配給單獨的執行緒處理。在 .NET 中,你可以使用以下機制並行執行程式碼:執行緒、執行緒池和任務。對於並行性來說,在 C# 中使用任務,而不是執行緒。

任務不會建立它自己的作業系統執行緒,相反它們由 TaskScheduler 執行。

我們來看看如何建立任務。使用代理啟動一個任務 -

Task tsk = new Task(delegate { PrintMessage(); });
tsk.Start();

使用任務工廠啟動一個任務 -

Task.Factory.StartNew(() => {Console.WriteLine("Welcome!"); });

你還可以使用 Lambda -

Task tsk = new Task( () => PrintMessage() );
tsk.Start();

啟動一個任務的最基本方式是使用 run() -

示例

 線上演示

using System;
using System.Threading.Tasks;

public class Example {
   public static void Main() {
      Task tsk = Task.Run(() => {
         int a = 0;
         for (a = 0; a <= 1000; a++) {}
         Console.WriteLine("{0} loop iterations ends", a);
      });
      tsk.Wait();
   }
}

結果

1001 loop iterations ends

更新於: 22-6 月-2020

936 次瀏覽

開啟你的職業生涯

完成課程,獲得認證資格

開始學習
廣告
© . All rights reserved.