本文由机器翻译。若要查看英语原文,请勾选“英语”复选框。 也可将鼠标指针移到文本上,在弹出窗口中显示英语原文。
翻译
英语

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

 

发布日期: 2016年7月

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

命名空间:   System.ServiceModel.Channels
程序集:  System.ServiceModel(位于 System.ServiceModel.dll)

public IAsyncResult BeginClose(
	TimeSpan timeout,
	AsyncCallback callback,
	object state
)

参数

timeout
Type: System.TimeSpan

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

callback
Type: System.AsyncCallback

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

state
Type: System.Object

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

返回值

Type: System.IAsyncResult

引用异步关闭操作的 IAsyncResult

Exception Condition
InvalidOperationException

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

ObjectDisposedException

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

CommunicationObjectFaultedException

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

TimeoutException

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

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

通用 Windows 平台
自 8 起可用
.NET Framework
自 3.0 起可用
可移植类库
可移植 .NET 平台 中受支持
Silverlight
自 2.0 起可用
Windows Phone Silverlight
自 7.0 起可用
返回页首
显示: