ServicePointManager.SetTcpKeepAlive(Boolean, Int32, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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