The buffer to read the data into. The length of the buffer specifies how much data should be read.
The number of bytes that were read. If the socket is blocking wait for data to be available. If the remote side has closed the connection 0 is returned.
SocketException on failure.
Reads data from the socket.