ホームページ > バックエンド開発 > C#.Net チュートリアル > C# におけるスレッドベースの並列処理

C# におけるスレッドベースの並列処理

王林
リリース: 2023-09-11 16:09:02
転載
805 人が閲覧しました

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
ログイン後にコピー

以上がC# におけるスレッドベースの並列処理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート