Partager via


Délégués asynchrones

Les délégués asynchrones permettent d'appeler une méthode synchrone de manière asynchrone. Lorsqu'un délégué est appelé de manière synchrone, la méthode Invoke appelle directement la méthode cible sur le thread en cours. Si le compilateur prend en charge les délégués asynchrones, il générera la méthode Invoke et les méthodes BeginInvoke et EndInvoke. Si la méthode BeginInvoke est appelée, le Common Language Runtime mettra la demande en file d'attente et le retour à l'appelant sera immédiat. La méthode cible sera appelée sur un thread à partir du pool de threads. Le thread d'origine, qui a soumis la demande, est libre de poursuivre en parallèle son exécution vers la méthode cible, qui s'exécute sur un thread du pool. Si un rappel a été spécifié sur BeginInvoke, il sera appelé lors du retour de la méthode cible. Dans le rappel, la méthode EndInvoke est utilisée pour obtenir la valeur de retour et les paramètres d'entrée/de sortie. Si le rappel n'a pas été spécifié sur BeginInvoke, EndInvoke peut être utilisé sur le thread d'origine qui a soumis une demande.

Remarque   Le compilateur Microsoft C# prend actuellement en charge un délégué asynchrone.

Dans cette section

Rubrique connexe