Partager via


IReplyChannel.BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) Méthode

Définition

Commence une opération asynchrone pour recevoir un message de demande auquel sont associés un délai d'attente spécifié et un objet d'état.

public:
 IAsyncResult ^ BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginTryReceiveRequest (TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginTryReceiveRequest : TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginTryReceiveRequest (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

Paramètres

timeout
TimeSpan

TimeSpan qui spécifie le délai d'exécution de l'opération de demande de réception avant dépassement du délai d’attente et retour de false.

callback
AsyncCallback

Le délégué AsyncCallback qui reçoit la notification de la réception asynchrone qu'une opération de demande exécute.

state
Object

Objet, spécifié par l'application, qui contient les informations d'état associées à la réception asynchrone d'une opération de demande.

Retours

IAsyncResult qui fait référence à l'opération de demande de réception asynchrone.

Exemples

Le code suivant illustre comment implémenter cette méthode :

public IAsyncResult BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
    TryReceiveRequestAsyncResult result = new TryReceiveRequestAsyncResult(this, timeout, callback, state);
    result.Begin();
    return result;
}

Remarques

Utilisez la méthode asynchrone BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) lorsque vous souhaitez que le traitement de l'application se poursuive sans attendre. Utilisez l'une des méthodes TryReceiveRequest(TimeSpan, RequestContext) synchrones lorsque le thread en cours peut faire l'objet d'un blocage en répondant au message de demande ou jusqu'à ce que l'intervalle de délai d'attente soit dépassé.

Cette méthode reçoit, via un rappel, la notification de l'identité du gestionnaire d'événements de l'opération. L'opération ne se termine que lorsqu'un message est disponible dans le canal ou lorsque le délai d'attente a expiré.

Notes pour les responsables de l’implémentation

L'opération retourne false si le timeout spécifié est dépassé.

S’applique à