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 de mantenimiento activo en una conexión TCP. El valor predeterminado es que el uso de paquetes de mantenimiento activo 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 de mantenimiento activo 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 se producirá un error en las llamadas posteriores con un SocketError de NotConnected.

Se aplica a

Consulte también