ICommunicationObject.Close メソッド

定義

通信オブジェクトを現在の状態から閉じた状態に遷移させます。

オーバーロード

名前 説明
Close()

通信オブジェクトを現在の状態から閉じた状態に遷移させます。

Close(TimeSpan)

通信オブジェクトを現在の状態から閉じた状態に遷移させます。

Close()

ソース:
ICommunicationObject.cs
ソース:
ICommunicationObject.cs
ソース:
ICommunicationObject.cs

通信オブジェクトを現在の状態から閉じた状態に遷移させます。

public:
 void Close();
public void Close();
abstract member Close : unit -> unit
Public Sub Close ()

例外

Close() は、 Faulted 状態のオブジェクトに対して呼び出されました。

ICommunicationObjectが正常に閉じる前に、既定の終了タイムアウトが経過しました。

注釈

このメソッドにより、 ICommunicationObjectOpened 状態から Closed 状態に正常に移行します。 Close メソッドを使用すると、戻る前に、未完了の作業を完了できます。 たとえば、バッファー内のメッセージの送信を終了します)。

ICommunicationObjectClosing状態に入り、Closed状態への移行が完了するまで保持されます。

Close は、 Closed 状態に達すると返されます。

ICommunicationObjectが正常に終了する前に既定の終了タイムアウトが経過すると、ICommunicationObjectは中止されます。

CloseICommunicationObject、またはCreated状態のOpeningFaultedが呼び出されると、ICommunicationObjectは中止されます。 CloseまたはICommunicationObject状態のClosingClosedが呼び出されると、呼び出しはすぐに戻ります。

また、 BeginClose を呼び出して開始され、 Closeを呼び出して完了する close メソッドの非同期バージョンもあります。

適用対象

Close(TimeSpan)

ソース:
ICommunicationObject.cs
ソース:
ICommunicationObject.cs
ソース:
ICommunicationObject.cs

通信オブジェクトを現在の状態から閉じた状態に遷移させます。

public:
 void Close(TimeSpan timeout);
public void Close(TimeSpan timeout);
abstract member Close : TimeSpan -> unit
Public Sub Close (timeout As TimeSpan)

パラメーター

timeout
TimeSpan

送信操作がタイムアウトするまでに完了する必要がある時間を指定する TimeSpan

例外

Close() は、 Faulted 状態のオブジェクトに対して呼び出されました。

タイムアウトは、 ICommunicationObject が正常に終了する前に経過しました。

注釈

このメソッドにより、指定した時間内に ICommunicationObjectOpened 状態から Closed 状態に正常に移行します。 Close メソッドを使用すると、戻る前に、未完了の作業を完了できます。 たとえば、バッファー内のメッセージの送信を終了します)。

ICommunicationObjectClosing状態に入り、Closed状態への移行が完了するまで保持されます。

Close は、 Closed 状態に達すると返されます。

ICommunicationObjectが正常に閉じる前にタイムアウトが経過すると、ICommunicationObjectは中止されます。

CloseICommunicationObject、またはCreated状態のOpeningFaultedが呼び出されると、ICommunicationObjectは中止されます。 CloseまたはICommunicationObject状態のClosingClosedが呼び出されると、呼び出しはすぐに戻ります。

また、 BeginClose を呼び出して開始され、 Closeを呼び出して完了する close メソッドの非同期バージョンもあります。

注意 (実装者)

指定したTimeoutExceptionを超えた場合、操作はtimeoutをスローする必要があります。

適用対象