Partilhar via


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

Definição

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.

Aplica-se a

Confira também