IInputChannel.Receive Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Retourne un message reçu par le canal d’entrée, s’il est disponible avec un intervalle de temps explicitement ou implicitement défini.
Surcharges
| Nom | Description |
|---|---|
| Receive() |
Retourne le message reçu, le cas échéant. Si un message n’est pas disponible, bloque un intervalle de temps par défaut. |
| Receive(TimeSpan) |
Retourne le message reçu, le cas échéant. Si un message n’est pas disponible, bloque un intervalle de temps spécifié. |
Remarques
Utilisez la méthode synchrone Receive lorsqu’il est acceptable que le thread actuel soit bloqué jusqu’à ce qu’il reçoive le message de demande ou dépasse l’intervalle de temps spécifié par timeout. Utilisez la méthode asynchrone BeginReceive lorsque vous avez besoin que le traitement de l’application continue sans attendre la réception de la demande.
L’opération synchrone Receive est disponible avec ou sans délai d’expiration explicite.
Si un message n’est pas disponible, il bloque jusqu’à ce qu’un message soit disponible ou jusqu’à ce que le délai d’expiration soit dépassé.
Receive()
Retourne le message reçu, le cas échéant. Si un message n’est pas disponible, bloque un intervalle de temps par défaut.
public:
System::ServiceModel::Channels::Message ^ Receive();
public System.ServiceModel.Channels.Message Receive();
abstract member Receive : unit -> System.ServiceModel.Channels.Message
Public Function Receive () As Message
Retours
Reçu Message .
Exemples
Le code suivant montre comment implémenter cette méthode :
public Message Receive()
{
return Receive(DefaultReceiveTimeout);
}
Remarques
Utilisez la méthode synchrone Receive lorsqu’il est acceptable que le thread actuel soit bloqué jusqu’à ce qu’il reçoive le message de demande ou dépasse l’intervalle de temps spécifié par timeout. Utilisez la méthode asynchrone BeginReceive lorsque vous souhaitez que le traitement de l’application continue sans attendre la réception de la demande.
L’opération synchrone Receive est disponible avec ou sans délai d’expiration explicite.
Si un message n’est pas disponible, il bloque jusqu’à ce qu’un message soit disponible ou jusqu’à ce que le délai d’expiration soit dépassé.
Receive peut être appelé plusieurs fois ou simultanément. Receive Un seul appel peut être effectué pour chaque message reçu.
S’applique à
Receive(TimeSpan)
Retourne le message reçu, le cas échéant. Si un message n’est pas disponible, bloque un intervalle de temps spécifié.
public:
System::ServiceModel::Channels::Message ^ Receive(TimeSpan timeout);
public System.ServiceModel.Channels.Message Receive(TimeSpan timeout);
abstract member Receive : TimeSpan -> System.ServiceModel.Channels.Message
Public Function Receive (timeout As TimeSpan) As Message
Paramètres
- timeout
- TimeSpan
Qui TimeSpan spécifie la durée pendant laquelle l’opération de réception doit se terminer avant le délai d’attente et la levée d’un TimeoutException.
Retours
Reçu Message .
Exceptions
La valeur spécifiée timeout est dépassée avant la fin de l’opération.
Le délai d’expiration spécifié est inférieur à zéro.
Exemples
Le code suivant montre comment implémenter cette méthode :
public Message Receive(TimeSpan timeout)
{
Message message;
while (true)
{
message = this.InnerChannel.Receive(timeout);
if (ProcessReceivedMessage(ref message))
{
break;
}
}
return message;
}
Remarques
Utilisez la méthode synchrone Receive lorsqu’il est acceptable que le thread actuel soit bloqué jusqu’à ce qu’il reçoive le message de demande ou dépasse l’intervalle de temps spécifié par timeout. Utilisez la méthode asynchrone BeginReceive lorsque vous souhaitez que le traitement de l’application continue sans attendre la réception de la demande.
L’opération synchrone Receive est disponible avec ou sans délai d’expiration explicite.
Si un message n’est pas disponible, il bloque jusqu’à ce qu’un message soit disponible ou jusqu’à ce que le délai d’expiration soit dépassé.
Receive peut être appelé plusieurs fois ou simultanément. Receive Un seul appel peut être effectué pour chaque message reçu.