IInputChannel.BeginWaitForMessage(TimeSpan, AsyncCallback, Object) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
开始一个异步等待-a-message-to-arrive 操作,该操作具有与之关联的指定超时和状态对象。
public:
IAsyncResult ^ BeginWaitForMessage(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWaitForMessage(TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginWaitForMessage : TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginWaitForMessage (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult
参数
- callback
- AsyncCallback
AsyncCallback接收异步操作完成通知的委托。
- state
- Object
由应用程序指定的对象,其中包含与异步操作关联的状态信息。
返回
该 IAsyncResult 引用异步操作以等待消息到达。
例外
在操作完成之前,将超出指定的 timeout 值。
指定的超时小于零。
示例
以下代码演示如何实现此方法:
public IAsyncResult BeginWaitForMessage(TimeSpan timeout, AsyncCallback callback, object state)
{
return this.InnerChannel.BeginWaitForMessage(timeout, callback, state);
}
注解
如果需要应用程序处理继续,而无需等待消息到达,请使用异步 BeginWaitForMessage(TimeSpan, AsyncCallback, Object) 方法。 当当前线程等待消息到达队列时,可以接受同步 WaitForMessage(TimeSpan) 方法。 线程被阻止到指定的 timeout。
此方法通过回调接收操作事件处理程序标识的通知。 在通道中可用消息或超时发生之前,该操作才完成。
实施者说明
如果超出指定false值,则返回该操作timeout,而不是超时异常。