TcpClient.Available Property


Gets the amount of data that has been received from the network and is available to be read.

 property int Available { int get(); };
public int Available { get; }
member this.Available : int
Public ReadOnly Property Available As Integer

Property Value

The number of bytes of data received from the network and available to be read.


An error occurred when attempting to access the socket.

The Socket has been closed.


The following code example shows the use of the Available property.

static void GetAvailable( TcpClient^ t )
   // Find out how many bytes are ready to be read.
   Console::WriteLine( "Available value is {0}", t->Available.ToString() );
static void GetAvailable()
    // Find out how many bytes are ready to be read.
    Console.WriteLine("Availabe value is {0}", t.Available);


The Available property is a way to determine whether data is queued for reading. If data is available, call Read to get the data. The available data is the total amount of data queued in the network buffer for reading. If no data is queued in the network buffer, Available returns 0.

If the remote host shuts down or closes the connection, Available may throw a SocketException. If you receive a SocketException, use SocketException.ErrorCode to obtain the specific error code. After you have obtained this code, you can refer to the Windows Sockets version 2 API error code documentation for a detailed description of the error.

Applies to