Dans la programmation asynchrone .NET, la compréhension de la différence entre
et dans Async CTP est très importante. Ces deux méthodes sont différentes et leurs caractéristiques affecteront également les performances et le processus de code. Task.WaitAll()
Task.WhenAll()
tâche.waitall ()
est une opération de blocage qui bloque le thread actuel jusqu'à ce que toutes les tâches du tableau spécifié soient terminées. Cela signifie que cette méthode ne sera retournée qu'après la fin de chaque tâche, peu importe la durée de celle-ci.
tâche.Whenall () Task.WaitAll()
renvoie une instance , qui représente l'achèvement de toutes les tâches dans le tableau spécifié. Cela signifie que cette méthode ne bloquera pas le thread actuel, mais continuera d'exécuter la ligne de code suivante. Une fois toutes les tâches d'entrée terminées, le sera terminé.
Quand sera-t-il utilisé? Task.WhenAll()
Task
sélectionnez ou Task
en fonction des besoins spécifiques du code. Voici quelques exemples pratiques:
quand utiliser la tâche.waitall ():
Task.WaitAll()
Task.WhenAll()
Vous devez attendre que toutes les tâches se terminent avant de continuer à effectuer des opérations de suivi.
quand utiliser la tâche.Whenall ():
Exemple de code
await
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!