Setting the Linger property to a value greater than zero
indicates that the Disconnect method should wait up to the
specified number of seconds for any data on the socket to be written
before it is closed. A value of zero indicates that the socket should
be closed immediately (but gracefully, without data loss).