ICommunicationObject.BeginOpen 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
開始非同步作業以開啟通訊物件。
多載
BeginOpen(AsyncCallback, Object) |
開始非同步作業以開啟通訊物件。 |
BeginOpen(TimeSpan, AsyncCallback, Object) |
開始非同步作業,開啟有已指定時間間隔的通訊物件。 |
備註
方法 BeginOpen 會使 ICommunicationObject 進入 Opening 狀態,直到其轉換至 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。
例外狀況
ICommunicationObject 無法開啟,而且已進入 Faulted 狀態。
經過預設的開啟逾時時間之後,ICommunicationObject 就可以進入 Opened 狀態,而且也已進入 Faulted 狀態。
備註
ICommunicationObject具現化時,它會從 Created 狀態開始。 在 Created 狀態下,可以設定物件 (例如可以設定屬性或註冊事件),但是仍無法傳送或接收訊息。 方法 BeginOpen 會導致 ICommunicationObject 進入 Opening 狀態,直到開啟作業成功為止、開啟作業逾時或失敗,而且物件發生錯誤或 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
參數
- callback
- AsyncCallback
AsyncCallback 委派,這個委派會接收非同步開啟作業完成的通知。
- state
- Object
應用程式所指定的物件,其中包含與非同步開啟作業相關聯的狀態資訊。
傳回
參考非同步開啟作業的 IAsyncResult。
例外狀況
ICommunicationObject 無法開啟,而且已進入 Faulted 狀態。
經過指定的逾時時間之後,ICommunicationObject 就可以進入 Opened 狀態,而且也已進入 Faulted 狀態。
備註
ICommunicationObject具現化時,它會從 Created 狀態開始。 在 Created 狀態下,可以設定物件 (例如可以設定屬性或註冊事件),但是仍無法傳送或接收訊息。 方法 Open 會導致 ICommunicationObject 進入 Opening 狀態,直到開啟作業成功為止、開啟作業逾時或失敗,而且物件發生錯誤或 ICommunicationObject 中止為止。
Opened在 狀態中 ICommunicationObject ,可以使用 (例如,訊息可以) 接收,但無法再設定。
給實施者的注意事項
如果超過指定的 timeout
,作業必須擲回 TimeoutException 。