ServicePointManager.SetTcpKeepAlive(Boolean, Int32, Int32) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Habilita ou desabilita a opção keep alive em uma conexão 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
Se definido como true, a opção keep alive do TCP em uma conexão TCP será habilitada usando os valores keepAliveTime
e keepAliveInterval
especificados.
Se definido como false, em seguida, a opção keep alive do TCP será desabilitada e os parâmetros restantes serão ignorados.
O valor padrão é false.
- keepAliveTime
- Int32
Especifica o tempo limite, em milissegundos, sem nenhuma atividade até que o primeiro pacote keep alive seja enviado.
O valor deve ser maior que 0. Se um valor menor ou igual a zero for passado, um ArgumentOutOfRangeException será lançado.
- keepAliveInterval
- Int32
Especifica o intervalo, em milissegundos, entre envios sucessivos de pacotes keep alive se nenhuma confirmação for recebida.
O valor deve ser maior que 0. Se um valor menor ou igual a zero for passado, um ArgumentOutOfRangeException será lançado.
Exceções
O valor especificado para o parâmetro keepAliveTime
ou keepAliveInterval
é menor ou igual a 0.
Comentários
Um aplicativo pode solicitar que um provedor TCP/IP habilite o uso de pacotes keep alive em uma conexão TCP. O padrão é que o uso de pacotes keep alive em uma conexão TCP está desabilitado.
As configurações padrão quando um soquete TCP é inicializado definem o tempo limite de keep alive como 2 horas e o intervalo keep alive como 1 segundo. O keepAliveTime
parâmetro especifica o tempo limite, em milissegundos, sem atividade até que o primeiro pacote keep alive seja enviado. O keepAliveInterval
parâmetro especifica o intervalo, em milissegundos, entre quando pacotes keep alive sucessivos são enviados se nenhuma confirmação for recebida. O número de investigações keep alive não pode ser alterado e está definido como 10.
Se uma conexão TCP for descartada como resultado de keep alives, um SocketError de NetworkReset será retornado para todas as chamadas em andamento no soquete e todas as chamadas subsequentes falharão com um SocketError de NotConnected.