IReplyChannel.BeginWaitForRequest(TimeSpan, AsyncCallback, Object) 方法

定义

开始具有关联的指定超时值和状态对象的异步请求操作。

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

参数

timeout
TimeSpan

TimeSpan,指定等待接收可用请求的时间间隔。

callback
AsyncCallback

AsyncCallback 委托,接收请求操作完成的异步接收的通知。

state
Object

一个由应用程序指定的对象,它包含与请求操作的异步接收相关联的状态信息。

返回

IAsyncResult

引用等待请求消息到达的异步操作的 IAsyncResult

示例

下面的代码演示如何实现此方法:

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

注解

如果当前线程在等待请求消息到达队列时可以被阻塞,则使用同步 WaitForRequest(TimeSpan) 方法。 该线程最多被阻塞 timeout 指定的时间长度。

此方法通过回调为操作接收事件处理程序标识的通知。 直到通道中出现请求消息时或发生超时时才完成操作。

实施者说明

如果超出指定的 false,此操作返回 timeout

适用于