Поделиться через


ServicePoint.SetTcpKeepAlive(Boolean, Int32, Int32) Метод

Определение

Включает или отключает параметр поддержания активности соединения TCP.

public:
 void SetTcpKeepAlive(bool enabled, int keepAliveTime, int keepAliveInterval);
public void SetTcpKeepAlive (bool enabled, int keepAliveTime, int keepAliveInterval);
member this.SetTcpKeepAlive : bool * int * int -> unit
Public Sub SetTcpKeepAlive (enabled As Boolean, keepAliveTime As Integer, keepAliveInterval As Integer)

Параметры

enabled
Boolean

Если этот параметр имеет значение true, параметр поддержания активности соединения TCP будет включен с помощью указанных значений keepAliveTime и keepAliveInterval.

Если этот параметр имеет значение false, параметр поддержания активности TCP отключен, и остальные параметры игнорируются.

Значением по умолчанию является false.

keepAliveTime
Int32

Задает время ожидания в миллисекундах при отсутствии активности до отправки первого пакета поддержания активности.

Значение должно быть больше нуля. При передаче значения, меньшего или равного нулю, возникает исключение ArgumentOutOfRangeException.

keepAliveInterval
Int32

Задает интервал в миллисекундах между успешной отправкой пакетов поддержания активности в случае отсутствия подтверждения.

Значение должно быть больше нуля. При передаче значения, меньшего или равного нулю, возникает исключение ArgumentOutOfRangeException.

Исключения

Значение параметра keepAliveTime или keepAliveInterval меньше или равно 0.

Комментарии

Приложение может запросить у поставщика TCP/IP возможность использования пакетов проверки активности в TCP-подключении. По умолчанию использование пакетов проверки активности в TCP-подключении отключено.

Параметры по умолчанию при инициализации сокета TCP устанавливают для времени ожидания активности 2 часа, а для интервала поддержания активности — 1 секунду. Параметр keepAliveTime указывает время ожидания (в миллисекундах) без действия до отправки первого пакета проверки активности. Параметр keepAliveInterval задает интервал в миллисекундах между отправкой последовательных пакетов проверки активности, если подтверждение не получено. Количество проб поддержания активности изменить нельзя. Для этого задано значение 10.

Если TCP-подключение разорвано в результате поддержания активности, SocketErrorNetworkReset объект возвращается для всех вызовов, которые выполняются в сокете, и все последующие вызовы будут завершаться ошибкой SocketError с .NotConnected

Применяется к