Sdílet prostřednictvím


ServicePointManager.SetTcpKeepAlive(Boolean, Int32, Int32) Metoda

Definice

Povolí nebo zakáže možnost zachování připojení u připojení 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)

Parametry

enabled
Boolean

Pokud je nastavená hodnota true, bude možnost zachování připojení TCP u připojení TCP povolena pomocí zadaných keepAliveTime hodnot a keepAliveInterval .

Pokud je nastavená hodnota false, možnost tcp keep-alive je zakázaná a zbývající parametry se ignorují.

Výchozí hodnota je False.

keepAliveTime
Int32

Určuje časový limit v milisekundách bez aktivity, dokud není odeslán první paket keep-alive.

Hodnota musí být větší než 0. Pokud je předána hodnota menší než nebo rovna ArgumentOutOfRangeException nule, je vyvolán.

keepAliveInterval
Int32

Určuje interval v milisekundách mezi tím, kdy se po sobě jdoucí pakety keep-alive odesílají, pokud není přijato potvrzení.

Hodnota musí být větší než 0. Pokud je předána hodnota menší než nebo rovna ArgumentOutOfRangeException nule, je vyvolán.

Výjimky

Hodnota zadaná pro keepAliveTime parametr nebo keepAliveInterval je menší než nebo rovna 0.

Poznámky

Aplikace může požadovat, aby poskytovatel protokolu TCP/IP povolil použití paketů pro zachování připojení TCP. Ve výchozím nastavení je použití paketů keep-alive v připojení TCP zakázané.

Výchozí nastavení při inicializaci soketu TCP nastaví časový limit pro zachování připojení na 2 hodiny a interval udržování na 1 sekundu. Parametr keepAliveTime určuje časový limit v milisekundách bez aktivity, dokud není odeslán první paket keep-alive. Parametr keepAliveInterval určuje interval v milisekundách mezi tím, kdy se po sobě jdoucí pakety keep-alive odesílají, pokud není přijato žádné potvrzení. Počet sond udržování připojení nelze změnit a je nastaven na 10.

Pokud je připojení TCP ukončeno v důsledku zachování připojení, SocketError vrátí se všem probíhajícím voláním v soketu a všechna následná volání selžou s chybou a SocketErrorNotConnected.NetworkReset

Platí pro

Viz také