首頁 >後端開發 >C#.Net教程 >C# 8.0 中的非同步流是什麼?

C# 8.0 中的非同步流是什麼?

王林
王林轉載
2023-09-01 12:13:111169瀏覽

C# 8.0 中的异步流是什么?

C# 8.0 introduces async streams, which model a streaming source of data. Data 流通常異步地檢索或產生元素。

產生序列的程式碼現在可以使用yield return來傳回元素

使用async修飾符宣告的方法。

我們可以使用await foreach迴圈來消費非同步流。

以下是語法:

static IEnumerable<string> Message(){
   yield return "Hello!";
   yield return "Hello!";
}
Can be replaced by IAsyncEnumerable
static async IAsyncEnumerable<string> MessageAsync(){
   await Task.Delay(2000);
   yield return "Hello!";
   await Task.Delay(2000);
   yield return "Hello!";
}

Example

的翻譯為:

範例

class Program{
   public static async Task Main(){
      await foreach (var item in MessageAsync()){
         System.Console.WriteLine(item);
      }
      Console.ReadLine();
   }
   static async IAsyncEnumerable<string> MessageAsync(){
      await Task.Delay(2000);
      yield return "Hello!";
      await Task.Delay(2000);
      yield return "Hello!";
   }
}

輸出

Hello!
Hello!

以上是C# 8.0 中的非同步流是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除