Compartir vía


ServicePointManager.SetTcpKeepAlive(Boolean, Int32, Int32) Método

Definición

Habilita o deshabilita la opción keep-alive en una conexión TCP.

public:
 static void SetTcpKeepAlive(bool enabled, int keepAliveTime, int keepAliveInterval);
public static void SetTcpKeepAlive (bool enabled, int keepAliveTime, int keepAliveInterval);
static member SetTcpKeepAlive : bool * int * int -> unit
Public Shared Sub SetTcpKeepAlive (enabled As Boolean, keepAliveTime As Integer, keepAliveInterval As Integer)

Parámetros

enabled
Boolean

Si su valor es true, la opción keep-alive en una conexión TCP estará habilitada con los valores especificados de keepAliveTime y keepAliveInterval.

Si su valor es false, esta opción estará deshabilitada y se omitirán los parámetros restantes.

El valor predeterminado es false.

keepAliveTime
Int32

Especifica el tiempo de espera sin actividad, en milisegundos, hasta que se envía el primer paquete keep-alive.

El valor debe ser mayor que 0. Si se pasa un valor menor o igual que cero, se devolverá ArgumentOutOfRangeException.

keepAliveInterval
Int32

Especifica el intervalo, en milisegundos, entre envíos sucesivos de paquetes keep-alive si no se recibe ninguna confirmación.

El valor debe ser mayor que 0. Si se pasa un valor menor o igual que cero, se iniciará una excepción ArgumentOutOfRangeException.

Excepciones

El valor especificado para el parámetro keepAliveTime o keepAliveInterval es menor o igual que 0.

Comentarios

Una aplicación puede solicitar que un proveedor TCP/IP habilite el uso de paquetes keep-alive en una conexión TCP. El valor predeterminado es que el uso de paquetes keep-alive en una conexión TCP está deshabilitado.

La configuración predeterminada cuando se inicializa un socket TCP establece el tiempo de espera de mantenimiento activo en 2 horas y el intervalo de mantenimiento activo en 1 segundo. El keepAliveTime parámetro especifica el tiempo de espera, en milisegundos, sin actividad hasta que se envíe el primer paquete keep-alive. El keepAliveInterval parámetro especifica el intervalo, en milisegundos, entre cuando se envían paquetes keep-alive sucesivos si no se recibe ninguna confirmación. No se puede cambiar el número de sondeos de mantenimiento activo y se establece en 10.

Si se quita una conexión TCP como resultado de keep-alives, se devuelve un SocketError de NetworkReset a cualquier llamada en curso en el socket y las llamadas posteriores producirán un error con un SocketError de NotConnected.

Se aplica a

Consulte también