CommunicationObject.OnBeginClose(TimeSpan, AsyncCallback, Object) 方法

定义

在调用了异步关闭操作,从而引起通信对象转换为正在关闭状态的情况下,该方法将插入处理。

protected:
 abstract IAsyncResult ^ OnBeginClose(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
protected abstract IAsyncResult OnBeginClose (TimeSpan timeout, AsyncCallback callback, object state);
abstract member OnBeginClose : TimeSpan * AsyncCallback * obj -> IAsyncResult
Protected MustOverride Function OnBeginClose (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

参数

timeout
TimeSpan

TimeSpan,指定在超时前必须完成关闭操作的时间。

callback
AsyncCallback

接收关闭操作异步完成通知的 AsyncCallback 委托。

state
Object

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

返回

引用异步关闭操作的 IAsyncResult

例外

通信对象未处于 OpenedOpening 状态,因此无法修改。

通信对象处于 ClosingClosed 状态,因此无法修改。

通信对象处于 Faulted 状态,因此无法修改。

在操作完成之前超出了分配给该操作的默认时间间隔。

注解

如果通信对象最初处于 BeginClose 状态,则 OnBeginClose 方法将调用 Opened

在调用了同步 Close 操作,从而引起通信对象转换为正在关闭状态的情况下,若要插入处理,请使用 OnClose(TimeSpan) 方法。

适用于