Compartir vía


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

Definición

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

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

Parámetros

enabled
Boolean

Si se establece en true, la opción tcp keep-alive en una conexión TCP se habilitará con los valores de keepAliveTime y keepAliveInterval especificados.

Si se establece en false, la opción TCP keep-alive está deshabilitada y se omiten los parámetros restantes.

El valor predeterminado es false.

keepAliveTime
Int32

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

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

keepAliveInterval
Int32

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

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

Excepciones

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

Comentarios

Cautela

WebRequest, HttpWebRequest, ServicePointy WebClient están obsoletos y no debe usarlos para el nuevo desarrollo. Use HttpClient en su lugar.

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 parámetro keepAliveTime especifica el tiempo de espera, en milisegundos, sin actividad hasta que se envíe el primer paquete keep-alive. El parámetro keepAliveInterval 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 keep-alive y se establece en 10.

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

Se aplica a