Utilisation de 'async' dans une application console en C# [dupliquer]
Lorsque vous travaillez avec des méthodes 'async' en C#, la règle de Le pouce est de garantir que les opérations asynchrones sont gérées de manière cohérente dans toute l'application. Cela signifie que si une méthode 'async' est utilisée, jusqu'au point d'entrée, les méthodes doivent également être marquées comme asynchrones.
Cependant, dans une application console, la méthode Main sert d'entrée point et ne peut pas être rendu « asynchrone » en raison d’erreurs de compilation. Cela soulève une question : comment gérer efficacement les opérations asynchrones dans une application console ?
Une approche consiste à utiliser des méthodes synchrones dans la méthode Main et à attendre le résultat de l'opération asynchrone :
static void Main() { MainAsync().Wait(); } static async Task MainAsync() { ... }
Cette méthode attend la fin de l'opération asynchrone avant de continuer, garantissant que l'application ne se termine pas prématurément.
Vous pouvez également utiliser votre propre contexte asynchrone pour gérer l'exécution des opérations asynchrones dans l'application console :
static void Main() { AsyncContext.Run(() => MainAsync()); } static async Task MainAsync() { ... }
Cette approche vous permet d'utiliser des méthodes 'async' dans la méthode Main sans encourir d'erreurs de compilation. La classe AsyncContext encapsule l'exécution d'opérations asynchrones et fournit un moyen cohérent de les gérer dans une application console.
Les deux approches sont des options viables pour gérer les opérations asynchrones dans une application console, en fonction des exigences et des préférences spécifiques de le développeur. En adhérant à ces principes, vous pouvez vous assurer que vos applications console sont correctement structurées et gèrent efficacement les opérations asynchrones.
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!