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

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

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 までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!