Socket.Disconnect メソッド
アセンブリ: System (system.dll 内)

Public Sub Disconnect ( _ reuseSocket As Boolean _ )
public void Disconnect ( bool reuseSocket )
public: void Disconnect ( bool reuseSocket )
public void Disconnect ( boolean reuseSocket )
public function Disconnect ( reuseSocket : boolean )


コネクション指向のプロトコルを使用している場合、このメソッドを使用してソケットを閉じることができます。このメソッドは、コネクションを終了し、Connected プロパティを false に設定します。ただし、reuseSocket が true の場合は、ソケットを再利用できます。
ソケットが閉じる前にすべてのデータが送受信されたことを確認するには、Disconnect メソッドの呼び出しの前に Shutdown を呼び出す必要があります。
最初に Shutdown を呼び出さずに Disconnect を呼び出す必要がある場合は、DontLingerSocket オプションを false に設定し、0 以外のタイムアウト間隔を指定して、発信伝送キューに置かれたデータが送信されたことを確認します。この場合、Disconnect は、データが送信されるか指定したタイムアウト時間が経過するまでブロックします。DontLinger を false に設定し、ゼロのタイムアウト間隔を指定すると、Close は接続を解放し、発信キューに置かれたデータは自動的に破棄されます。
![]() |
---|
SocketException が発生した場合は、SocketException.ErrorCode プロパティを使用して具体的なエラー コードを取得してください。このコードを取得したら、Windows Socket Version 2 API エラー コードのドキュメントでエラーの詳細情報を確認してください。これは MSDN ライブラリから入手できます。 |

同期通信のソケットを作成し、リモート ホストにデータを送信するコード例を次に示します。Shutdown が呼び出されて送受信の動作が停止し、Disconnect が呼び出されてソケット接続が閉じれられます。
IPHostEntry ipHost = Dns.Resolve(Dns.GetHostName()); IPAddress ipAddr = ipHost.AddressList[0]; IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, 11000); Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // Connect the socket to the remote end point. client.Connect(ipEndPoint); // Send some data to the remote device. string data = "This is a string of data <EOF>"; byte[] buffer = Encoding.ASCII.GetBytes(data); int bytesTransferred = client.Send(buffer); // Write to the console the number of bytes transferred. Console.WriteLine("{0} bytes were sent.\n", bytesTransferred); // Release the socket. client.Shutdown(SocketShutdown.Both); client.Disconnect(true); if (client.Connected) Console.WriteLine("We're still connnected"); else Console.WriteLine("We're disconnected");

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からSocket.Disconnect メソッドを検索する場合は、下記のリンクをクリックしてください。

- Socket.Disconnect メソッドのページへのリンク