The WriteLine method writes a line of text to the remote
host and terminates the line with a carriage-return and linefeed
control character sequence. Unlike the Write method which
writes arbitrary bytes of data to the socket, this method is
specifically designed to write a single line of text data from a
string.
The Buffer argument is a string which contains the data
that is to be sent to the remote host. The data will always be
terminated with a carriage-return and linefeed control character
sequence. If this argument is omitted, then a only a
carriage-return and linefeed are written to the socket. Note that
if the string contains a null byte, any data that follows the null
byte will be discarded.
The WriteLine method should only be used to send text,
never binary data. In particular, the function will discard any
data that follows a null byte and will append linefeed and carriage
return control characters to the data stream. Calling this this
method will force the thread to block until the complete line of
text has been written, the write operation times out or the remote
host aborts the connection. If this function is called with the
Blocking property set to False, it will automatically switch
the socket into a blocking mode, send the data and then restore the
socket to non-blocking mode. If another socket operation is
attempted while the WriteLine method is blocked sending data
to the remote host, an error will occur. It is recommended that
this method only be used with blocking socket connections.
The Write and WriteLine function calls can be
safely intermixed.