CommunicationObject.Close 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
導致通訊物件從目前的狀態轉換為已關閉狀態。
多載
Close() |
導致通訊物件從目前的狀態轉換為已關閉狀態。 |
Close(TimeSpan) |
在指定時間間隔內,讓通訊物件從目前的狀態轉換為已關閉狀態。 |
Close()
導致通訊物件從目前的狀態轉換為已關閉狀態。
public:
virtual void Close();
public void Close ();
abstract member Close : unit -> unit
override this.Close : unit -> unit
Public Sub Close ()
實作
例外狀況
通訊物件處於 Faulted 狀態,無法修改。
已超過為作業分配的預設時間間隔,該作業未完成。
備註
這個方法會讓 CommunicationObject 從 Closed 狀態以外的任何狀態順利轉換至 Closed 狀態。 Close 方法可讓任何未完成的工作在傳回前完成 (例如,完成傳送任何經過緩衝處理的訊息)。
在呼叫 CommunicationObject 方法後,Closing 會進入並維持 Close 狀態,直到轉換至 Closed 狀態完成為止。 轉換包含對於 OnClosing、OnClose(TimeSpan) 和 OnClosed 進行後續呼叫。
也有非同步的方式可用於關閉方法,亦即藉由呼叫 BeginClose 啟始。
適用於
Close(TimeSpan)
在指定時間間隔內,讓通訊物件從目前的狀態轉換為已關閉狀態。
public:
virtual void Close(TimeSpan timeout);
public void Close (TimeSpan timeout);
abstract member Close : TimeSpan -> unit
override this.Close : TimeSpan -> unit
Public Sub Close (timeout As TimeSpan)
參數
實作
例外狀況
通訊物件處於 Faulted 狀態,無法修改。
已超過為作業分配的預設時間間隔,該作業未完成。
備註
這個方法可在指定時間間隔內,將 CommunicationObject 從 Closed 狀態以外的任何狀態順利轉換至 Closed 狀態。 Close 方法可讓任何未完成的工作在傳回前完成 (例如,完成傳送任何經過緩衝處理的訊息)。
在呼叫 CommunicationObject 方法後,Closing 會進入並維持 Close 狀態,直到轉換至 Closed 狀態完成為止。 轉換包含對於 OnClosing、OnClose(TimeSpan) 和 OnClosed 進行後續呼叫。
也有非同步的方式可用於關閉方法,亦即藉由呼叫 BeginClose 啟始。