Socket.Close Socket.Close Socket.Close Socket.Close Method

定義

Socket 接続を閉じ、関連付けられたすべてのリソースを解放します。Closes the Socket connection and releases all associated resources.

オーバーロード

Close() Close() Close() Close()

Socket 接続を閉じ、関連付けられたすべてのリソースを解放します。Closes the Socket connection and releases all associated resources.

Close(Int32) Close(Int32) Close(Int32) Close(Int32)

Socket 接続を閉じ、すべての関連付けられているリソースを指定したタイムアウトで解放して、キューに置かれたデータの送信を許可します。Closes the Socket connection and releases all associated resources with a specified timeout to allow queued data to be sent.

Close() Close() Close() Close()

Socket 接続を閉じ、関連付けられたすべてのリソースを解放します。Closes the Socket connection and releases all associated resources.

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

次のコード例が閉じ、Socketします。The following code example closes a Socket.

aSocket->Shutdown( SocketShutdown::Both );
aSocket->Close();
if ( aSocket->Connected )
{
   Console::WriteLine( "Winsock error: {0}", Convert::ToString(
      System::Runtime::InteropServices::Marshal::GetLastWin32Error() ) );
}
aSocket.Shutdown(SocketShutdown.Both);
aSocket.Close();
    aSocket.Shutdown(SocketShutdown.Both)
    aSocket.Close()

End Sub 'SocketClose

注釈

Closeメソッドがリモート ホスト接続を閉じると、リリースのすべてのマネージしアンマネージ リソースに関連付けられている、Socketします。The Close method closes the remote host connection and releases all managed and unmanaged resources associated with the Socket. 終了時に、Connectedプロパティに設定されてfalseします。Upon closing, the Connected property is set to false.

接続指向のプロトコルは勧めを呼び出してShutdown呼び出す前に、Closeメソッド。For connection-oriented protocols, it is recommended that you call Shutdown before calling the Close method. これにより、すべてのデータが送信されており、それを閉じる前に、接続のソケットで受信したこと。This ensures that all data is sent and received on the connected socket before it is closed.

呼び出す必要がある場合Close最初に呼び出さずShutdown、キュー データを設定して送信される出力方向の送信のことを確認できる、 DontLinger Socketオプションをfalse0 以外のタイムアウト間隔を指定するとします。If you need to call Close without first calling Shutdown, you can ensure that data queued for outgoing transmission will be sent by setting the DontLingerSocket option to false and specifying a non-zero time-out interval. Close このデータが送信されるまで、または指定したタイムアウトの期限が切れるまで、ブロックされます。Close will then block until this data is sent or until the specified time-out expires. 設定した場合DontLingerfalse0 のタイムアウト間隔を指定してCloseの接続を解放し、送信キューに置かれたデータを自動的に破棄します。If you set DontLinger to false and specify a zero time-out interval, Close releases the connection and automatically discards outgoing queued data.

注意

設定する、DontLingerソケット オプションfalse、作成、LingerOptionが有効なプロパティを設定true、設定、LingerTimeプロパティを目的のタイムアウト期間。To set the DontLinger socket option to false, create a LingerOption, set the enabled property to true, and set the LingerTime property to the desired time out period. これを使用して、LingerOptionと共に、DontLingerソケット オプションを呼び出して、SetSocketOptionメソッド。Use this LingerOption along with the DontLinger socket option to call the SetSocketOption method.

注意

このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。This member outputs trace information when you enable network tracing in your application. 詳細については、次を参照してください。ネットワークのトレースを .NET Framework でします。For more information, see Network Tracing in the .NET Framework.

こちらもご覧ください

Close(Int32) Close(Int32) Close(Int32) Close(Int32)

Socket 接続を閉じ、すべての関連付けられているリソースを指定したタイムアウトで解放して、キューに置かれたデータの送信を許可します。Closes the Socket connection and releases all associated resources with a specified timeout to allow queued data to be sent.

public:
 void Close(int timeout);
public void Close (int timeout);
member this.Close : int -> unit
Public Sub Close (timeout As Integer)

パラメーター

timeout
Int32 Int32 Int32 Int32

最大 timeout 秒まで待ってから残りのデータを送信し、ソケットを閉じます。Wait up to timeout seconds to send any remaining data, then close the socket.

次のコード例は、閉じる方法を示します、Socketします。The following code example demonstrates how to close a Socket.

aSocket->Shutdown( SocketShutdown::Both );
aSocket->Close();
if ( aSocket->Connected )
{
   Console::WriteLine( "Winsock error: {0}", Convert::ToString(
      System::Runtime::InteropServices::Marshal::GetLastWin32Error() ) );
}
aSocket.Shutdown(SocketShutdown.Both);
aSocket.Close();
    aSocket.Shutdown(SocketShutdown.Both)
    aSocket.Close()

End Sub 'SocketClose

注釈

Closeメソッドがリモート ホスト接続を閉じると、リリースのすべてのマネージしアンマネージ リソースに関連付けられている、Socketします。The Close method closes the remote host connection and releases all managed and unmanaged resources associated with the Socket. 終了時に、Connectedプロパティに設定されてfalseします。Upon closing, the Connected property is set to false.

接続指向のプロトコルは勧めを呼び出してShutdown呼び出す前にCloseします。For connection-oriented protocols, it is recommended that you call Shutdown before calling Close. これにより、すべてのデータが送信されており、それを閉じる前に、接続のソケットで受信したこと。This ensures that all data is sent and received on the connected socket before it is closed.

呼び出す必要がある場合Close最初に呼び出さずShutdown、キュー データを設定して送信される出力方向の送信のことを確認できる、DontLingerオプションをfalse0 以外のタイムアウト間隔を指定するとします。If you need to call Close without first calling Shutdown, you can ensure that data queued for outgoing transmission will be sent by setting the DontLinger option to false and specifying a non-zero time-out interval. Close このデータが送信されるまで、または指定したタイムアウトの期限が切れるまで、ブロックされます。Close will then block until this data is sent or until the specified time-out expires. 設定した場合DontLingerfalse0 のタイムアウト間隔を指定してCloseの接続を解放し、送信キューに置かれたデータを自動的に破棄します。If you set DontLinger to false and specify a zero time-out interval, Close releases the connection and automatically discards outgoing queued data.

注意

設定する、DontLingerソケット オプションfalse、作成、LingerOptionが有効なプロパティを設定true、設定と、LingerTimeプロパティを目的のタイムアウト期間。To set the DontLinger socket option to false, create a LingerOption, set the enabled property to true, and set the LingerTime property to the desired time-out period. これを使用して、LingerOptionと共に、DontLingerソケット オプションを呼び出して、SetSocketOptionメソッド。Use this LingerOption along with the DontLinger socket option to call the SetSocketOption method.

注意

このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。This member outputs trace information when you enable network tracing in your application. 詳細については、次を参照してください。ネットワークのトレースを .NET Framework でします。For more information, see Network Tracing in the .NET Framework.

こちらもご覧ください

適用対象