Maison  >  Article  >  développement back-end  >  Programmation asynchrone en C# à l'aide des mots-clés Async et Await

Programmation asynchrone en C# à l'aide des mots-clés Async et Await

WBOY
WBOYavant
2023-09-02 19:45:02694parcourir

使用 Async 和 Await 关键字在 C# 中进行异步编程

La programmation asynchrone en C# est un moyen efficace de résoudre les activités bloquées ou les accès retardés. Si une activité est ainsi bloquée lors du processus de synchronisation, alors l’ensemble de l’application attendra et prendra plus de temps. L'application ne répond plus. Grâce à des méthodes asynchrones, l'application peut également continuer à effectuer d'autres tâches.

Les mots-clés async et wait en C# sont utilisés pour la programmation asynchrone. En les utilisant, vous pouvez utiliser les ressources .NET Framework, .NET Core, etc. Les méthodes asynchrones définies à l'aide du mot-clé async sont appelées méthodes asynchrones.

Applications avec interface graphique, veuillez vérifier la file d'attente du contenu s'il y a des tâches non traitées, supprimez-les et traitez-les d'abord. Le code est exécuté de manière synchrone et les tâches non traitées sont terminées en premier. Si le traitement prend plus de temps que prévu, l'application affichera un message Arrêter de répondre.

Voyons ce qui a été discuté ci-dessus -

private void OnRequestDownload(object sender, RoutedEventArgs e) {
   var req = HttpWebRequest.Create(_requestedUri);
   var res = req.GetResponse();
}

Pour résoudre le problème ci-dessus, utilisez les mots-clés async et wait -

private async void OnRequestDownload(object sender, RoutedEventArgs e) {
   var req= HttpWebRequest.Create(_requestedUri);
   var res = await req.GetResponseAsync();
}

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer
Article précédent:Fonctions mathématiques en C#Article suivant:Fonctions mathématiques en C#