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

Definição

Inicia uma operação de pedido assíncrona que tem um time out e um objeto de estado especificados associados.

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

Parâmetros

timeout
TimeSpan

O TimeSpan que especifica o intervalo de tempo para esperar pela receção de um pedido disponível.

callback
AsyncCallback

O AsyncCallback delegado que recebe a notificação do assíncrono recebe que uma operação de pedido foi concluída.

state
Object

Um objeto, especificado pela aplicação, que contém informação de estado associada à receção assíncrona de uma operação de pedido.

Devoluções

O IAsyncResult que faz referência à operação assíncrona para esperar pela chegada de uma mensagem de pedido.

Exemplos

O seguinte código ilustra como implementar este método:

public IAsyncResult BeginWaitForRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
    return this.InnerChannel.BeginWaitForRequest(timeout, callback, state);
}

Observações

Use o método síncrono WaitForRequest(TimeSpan) quando for aceitável que o thread atual seja bloqueado enquanto espera que uma mensagem de pedido chegue à fila. A thread é bloqueada até ao especificado timeout.

Este método recebe notificação, através de um callback, da identidade do gestor de eventos da operação. A operação só está concluída até que uma mensagem de pedido esteja disponível no canal ou ocorra o timeout.

Notas para Implementadores

A operação retorna false se o especificado timeout for ultrapassado.

Aplica-se a