次の方法で共有


ICommunicationObject.Close メソッド

定義

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

オーバーロード

Close()

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

Close(TimeSpan)

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

Close()

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

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

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

例外

Close() が、Faulted 状態のオブジェクトで呼び出されました。

ICommunicationObject を正常にクローズする前に、既定の close タイムアウトが経過しました。

注釈

このメソッドは、 を ICommunicationObject 状態から Opened 状態に適切に移行させます ClosedClose メソッドにより、戻る前に未完了の作業を完了できます。 たとえば、バッファー内のメッセージの送信を完了します)。

ICommunicationObject 状態に Closing 入り、状態への移行が完了するまでその状態に Closed 残ります。

Close は、状態に達すると を Closed 返します。

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

、、または Faulted 状態の で CreatedOpeningが呼び出ICommunicationObjectされた場合CloseICommunicationObject は中止されます。 または Closed 状態の で が呼び出ICommunicationObjectされたClosing場合Close、呼び出しはすぐに返されます。

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

適用対象

Close(TimeSpan)

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

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

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 を正常にクローズする前に、タイムアウトが経過しました。

注釈

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

ICommunicationObject 状態に Closing 入り、状態への移行が完了するまでその状態に Closed 残ります。

Close は、状態に達すると を Closed 返します。

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

、、または Faulted 状態の で CreatedOpeningが呼び出ICommunicationObjectされた場合CloseICommunicationObject は中止されます。 または Closed 状態の で が呼び出ICommunicationObjectされたClosing場合Close、呼び出しはすぐに返されます。

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

注意 (実装者)

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

適用対象