Leer en inglés

Compartir a través de


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

Definición

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

C#
public void SetTcpKeepAlive (bool enabled, int keepAliveTime, int keepAliveInterval);

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

Precaución

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

Producto Versiones
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 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 2.0, 2.1