Maison > développement back-end > Tutoriel C#.Net > Que sont les flux asynchrones en C# 8.0 ?

Que sont les flux asynchrones en C# 8.0 ?

王林
Libérer: 2023-09-01 12:13:11
avant
1149 Les gens l'ont consulté

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

C# 8.0 introduit les flux asynchrones, qui modélisent une source de données en streaming. Les flux récupèrent ou génèrent généralement des éléments de manière asynchrone.

Le code qui génère des séquences peut désormais utiliser le rendement pour renvoyer des éléments

Méthodes déclarées à l'aide du modificateur async.

Nous pouvons utiliser la boucle wait foreach pour consommer des flux asynchrones.

Voici la syntaxe :

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!";
}
Copier après la connexion

Example

est traduit par :

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!";
   }
}
Copier après la connexion

Output

Hello!
Hello!
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal