Partager via


Réception d’une réponse

Étant donné que les composants mis en file d’attente sont conçus pour fonctionner de manière asynchrone, les applications clientes ne doivent pas se bloquer pendant l’attente d’une réponse d’une requête mise en file d’attente. Néanmoins, il est souvent utile pour l’application cliente ou une application associée sur l’ordinateur client de recevoir une réponse à terme. Par exemple, un client peut souhaiter être averti lorsqu’une transaction demandée a été effectuée avec succès.

Il existe plusieurs façons pour un composant mis en file d’attente d’envoyer une réponse à son appelant de manière asynchrone. Par exemple, il peut envoyer un e-mail. Le serveur peut également publier des événements faiblement couplés auxquels le client peut s’abonner.

Une autre façon pour un client d’obtenir une réponse à partir d’un composant mis en file d’attente qui s’exécute sur un serveur consiste à passer à la méthode appelée un objet de notification. Un objet de notification est un instance d’un composant mis en file d’attente qui s’exécute sur le client. Un tel objet de notification peut être assez simple, contenant uniquement un entier utilisé pour représenter une valeur d’erreur, ou il peut être assez complexe, contenant toutes les informations nécessaires pour restaurer une transaction sur le client. Dans les deux cas, le client appelant passe un objet de notification en tant que paramètre d’entrée chaque fois qu’il souhaite une réponse d’un composant mis en file d’attente qui s’exécute sur un serveur. Étant donné que l’objet de notification est mis en file d’attente, le serveur peut appeler ses méthodes pour modifier son état, qui peut ensuite être lu par le client. Dans ce scénario, le service de composants mis en file d’attente COM+ est utilisé sur le client et le serveur pour permettre la communication asynchrone dans les deux sens.