Socket.Close Method (Int32)
Closes the Socket connection and releases all associated resources with a specified timeout to allow queued data to be sent.
Assembly: System (in System.dll)
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 will then block until this data is sent or until the specified time-out expires. If you set DontLinger to false and specify a zero time-out interval, Close releases the connection and automatically discards outgoing queued data.
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. 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. For more information, see Network Tracing in the .NET Framework.