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

Definición

Comienza una operación asincrónica para recibir un mensaje de solicitud que tiene un tiempo de espera especificado y un objeto de estado asociado a él.

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

Parámetros

timeout
TimeSpan

TimeSpan que especifica cuánto tiempo debe completarse la operación de solicitud de recepción antes de agotar el tiempo de espera y devolver false.

callback
AsyncCallback

AsyncCallback Delegado que recibe la notificación de la recepción asincrónica de que se completa una operación de solicitud.

state
Object

Objeto, especificado por la aplicación, que contiene información de estado asociada a la recepción asincrónica de una operación de solicitud.

Devoluciones

que IAsyncResult hace referencia a la operación de solicitud de recepción asincrónica.

Ejemplos

En el código siguiente se muestra cómo implementar este método:

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

Comentarios

Use el método asincrónico BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) cuando necesite que el procesamiento de la aplicación continúe sin esperar. Use uno de los métodos sincrónicos TryReceiveRequest(TimeSpan, RequestContext) cuando sea aceptable que el subproceso actual se bloquee mientras responde al mensaje de solicitud o hasta que se supere el intervalo de tiempo de espera.

Este método recibe una notificación, a través de una devolución de llamada, de la identidad del controlador de eventos para la operación. La operación no se completa hasta que un mensaje esté disponible en el canal o se agote el tiempo de espera.

Notas a los implementadores

La operación devuelve false si se supera el especificado timeout .

Se aplica a