<C#Learn/>
非同期処理 レッスン4

並列処理

Task.WhenAll・Task.WhenAny・Parallel.ForEachAsyncを使った並列実行を学びます。

並列処理のパターン

  • Task.WhenAll: すべてのTaskが完了するまで待機
  • Task.WhenAny: いずれか1つのTaskが完了したら継続
  • Parallel.ForEachAsync: 非同期の並列foreach(.NET 6以降)

Task.WhenAll で並列実行

複数の非同期操作を同時に開始し、全部の完了を待ちます。

C#エディタ

Task.WhenAny で最速を取る

最初に完了したTaskの結果を使う「タイムアウト」や「フォールバック」に活用します。

C#エディタ