Socket.Connected Propiedad

Definición

Obtiene un valor que indica si Socket se conecta con un host remoto a partir de la última operación Send u Receive.

C#
public bool Connected { get; }

Valor de propiedad

Es true si el objeto Socket estaba conectado a un recurso remoto desde la operación más reciente; de lo contrario, es false.

Ejemplos

El ejemplo de código siguiente se conecta a un punto de conexión remoto, comprueba la Connected propiedad y comprueba el estado actual de la conexión.

C#
// .Connect throws an exception if unsuccessful
client.Connect(anEndPoint);

// This is how you can determine whether a socket is still connected.
bool blockingState = client.Blocking;
try
{
    byte [] tmp = new byte[1];

    client.Blocking = false;
    client.Send(tmp, 0, 0);
    Console.WriteLine("Connected!");
}
catch (SocketException e)
{
    // 10035 == WSAEWOULDBLOCK
    if (e.NativeErrorCode.Equals(10035))
    {
        Console.WriteLine("Still Connected, but the Send would block");
    }
    else
    {
        Console.WriteLine("Disconnected: error code {0}!", e.NativeErrorCode);
    }
}
finally
{
    client.Blocking = blockingState;
}

Console.WriteLine("Connected: {0}", client.Connected);

Comentarios

La Connected propiedad obtiene el estado de conexión de a Socket partir de la última operación de E/S. Cuando devuelve false, nunca Socket se ha conectado o ya no está conectado. Connected no es seguro para subprocesos; puede devolver true después de anular una operación cuando Socket se desconecta de otro subproceso.

El valor de la Connected propiedad refleja el estado de la conexión a partir de la operación más reciente. Si necesita determinar el estado actual de la conexión, realice una llamada Send sin bloqueo y sin bytes. Si la llamada devuelve correctamente o produce un código de error WAEWOULDBLOCK (10035), el socket sigue conectado; de lo contrario, el socket ya no está conectado.

Si llama a Connect en un socket del Protocolo de datagramas de usuario (UDP), la Connected propiedad siempre devuelve true; sin embargo, esta acción no cambia la naturaleza inherente sin conexión de UDP.

Se aplica a

Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0