Обнаружение нулевого состояния окна на сервере Windows IOCPC++

Программы на C++. Форум разработчиков
Anonymous
Обнаружение нулевого состояния окна на сервере Windows IOCP

Сообщение Anonymous »

Я разрабатываю сервер Windows IOCP, и мне нужно точно определять, когда клиент переходит в состояние нулевого окна. В частности, я хочу понять, как сервер может определить это состояние при попытке отправить данные с помощью WSASend() и обработать статус завершения в рабочем потоке с помощью GetQueuedCompletionStatus() (GQCS).
Я попытался отправить данные с помощью WSASend(), когда подозревал, что клиент находится в состоянии нулевого окна. Я ожидаю получить конкретный код ошибки или статус завершения, который будет указывать на состояние нулевого окна. Однако я не уверен в точном механизме обнаружения этого состояния и в том, какие коды ошибок или возвращаемые значения мне следует искать в рабочем потоке IOCP.
Моя текущая реализация включает в себя:
  • Вызов WSASend() для передачи данных
  • Использование GetQueuedCompletionStatus() в рабочем потоке
  • Проверка возвращаемых значений и потенциальные коды ошибок
Я хочу надежно отличать истинное нулевое состояние окна от других проблем с сетевым соединением.

Подробнее здесь: https://stackoverflow.com/questions/791 ... ocp-server

Вернуться в «C++»