ICommunicationObject.BeginOpen 方法

定义

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

重载

BeginOpen(AsyncCallback, Object)

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

BeginOpen(TimeSpan, AsyncCallback, Object)

开始一个异步操作以在指定时间间隔内打开通信对象。

注解

该方法BeginOpen会导致进入ICommunicationObjectOpening状态,直到其过渡到Opened状态完成或失败为止。

提供了有显式超时和没有显式超时两个版本。

BeginOpen(AsyncCallback, Object)

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

public:
 IAsyncResult ^ BeginOpen(AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginOpen (AsyncCallback callback, object state);
abstract member BeginOpen : AsyncCallback * obj -> IAsyncResult
Public Function BeginOpen (callback As AsyncCallback, state As Object) As IAsyncResult

参数

callback
AsyncCallback

接收异步打开操作完成通知的 AsyncCallback 委托。

state
Object

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

返回

IAsyncResult

引用异步打开操作的 IAsyncResult

例外

ICommunicationObject 无法打开并且已进入 Faulted 状态。

ICommunicationObject(已经进入 Opened 状态)能够进入 Faulted 状态之前所经过的默认打开超时。

注解

ICommunicationObject实例化时,它将以Created状态开始。 在处于 Created 状态时,可以配置此对象(例如,可以设置属性或注册事件),但仍不能用此对象发送或接收消息。 该方法BeginOpen导致进入ICommunicationObjectOpening其保持状态,直到打开操作成功,打开操作超时或失败,对象出错或ICommunicationObject中止。

Opened 状态中, ICommunicationObject 可以使用 (例如,可以接收消息) ,但它不再可配置。

适用于

BeginOpen(TimeSpan, AsyncCallback, Object)

开始一个异步操作以在指定时间间隔内打开通信对象。

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

参数

timeout
TimeSpan

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

callback
AsyncCallback

接收异步打开操作完成通知的 AsyncCallback 委托。

state
Object

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

返回

IAsyncResult

引用异步打开操作的 IAsyncResult

例外

ICommunicationObject 无法打开并且已进入 Faulted 状态。

ICommunicationObject(已经进入 Opened 状态)能够进入 Faulted 状态之前所经过的指定超时。

注解

ICommunicationObject实例化时,它将以Created状态开始。 在处于 Created 状态时,可以配置此对象(例如,可以设置属性或注册事件),但仍不能用此对象发送或接收消息。 该方法Open导致进入ICommunicationObjectOpening其保持状态,直到打开操作成功,打开操作超时或失败,对象出错或ICommunicationObject中止。

Opened 状态中, ICommunicationObject 可以使用 (例如,可以接收消息) ,但它不再可配置。

实施者说明

如果超出指定timeout值,该操作必须引发TimeoutException

适用于