CommunicationObject.BeginClose 方法

定义

开始一个异步操作以关闭通信对象。

重载

BeginClose(AsyncCallback, Object)

开始一个异步操作以关闭通信对象。

BeginClose(TimeSpan, AsyncCallback, Object)

开始一个异步操作以在指定超时内关闭通信对象。

BeginClose(AsyncCallback, Object)

Source:
CommunicationObject.cs
Source:
CommunicationObject.cs
Source:
CommunicationObject.cs

开始一个异步操作以关闭通信对象。

public:
 virtual IAsyncResult ^ BeginClose(AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginClose (AsyncCallback callback, object state);
abstract member BeginClose : AsyncCallback * obj -> IAsyncResult
override this.BeginClose : AsyncCallback * obj -> IAsyncResult
Public Function BeginClose (callback As AsyncCallback, state As Object) As IAsyncResult

参数

callback
AsyncCallback

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

state
Object

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

返回

引用异步关闭操作的 IAsyncResult

实现

例外

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

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

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

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

注解

此方法使 CommunicationObject 在默认的时间间隔内从 Closed 状态之外的任意状态正常转换到 Closed 状态。 使用 BeginClose 方法,可在返回之前完成所有未完成的工作。 例如,完成所有缓冲的消息的发送)。 如果通信对象最初处于 OnBeginOpen(TimeSpan, AsyncCallback, Object) 状态,此方法将调用 Opened

适用于

BeginClose(TimeSpan, AsyncCallback, Object)

Source:
CommunicationObject.cs
Source:
CommunicationObject.cs
Source:
CommunicationObject.cs

开始一个异步操作以在指定超时内关闭通信对象。

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

参数

timeout
TimeSpan

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

callback
AsyncCallback

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

state
Object

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

返回

引用异步关闭操作的 IAsyncResult

实现

例外

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

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

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

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

注解

此方法使 CommunicationObject 在指定时间间隔内从除 Closed 状态之外的任意状态正常转换到 Closed 状态。 使用 BeginClose 方法,可在返回之前完成所有未完成的工作。 例如,完成所有缓冲的消息的发送)。 如果通信对象最初处于 OnBeginClose(TimeSpan, AsyncCallback, Object) 状态,此方法将调用 Opened

适用于