Информация об изменениях

Сообщение Re[3]: Socket успешно прочитал 0 байт :( проблемы от 19.05.2020 13:26

Изменено 19.05.2020 13:29 vsb

Re[3]: Socket успешно прочитал 0 байт :( проблемы
Здравствуйте, vvv848165@ya.ru, Вы писали:

VYR>кстати ты прав но почему для закрытых сокетов есть отдельные коды ошибок?


Про какие именно коды ошибок идёт речь? Возможно ты говоришь о ситуации, когда сокет закрыт ненормальным образом, например connection reset.

Т.е. соединение может быть закрыто нормальным образом, когда та сторона вызывает shutdown, в этом случае приходят одни пакеты (FIN).

Соединение может быть "оборвано", например если на той стороне программа упала и соединение подчищает уже ОС или программа вызвала close без shutdown. В этом случае приходят другие пакеты (RST).

А ещё соединение может просто отвалиться по таймауту, если давно не приходило никаких пакетов с той стороны. Это тоже ошибка.
Re[3]: Socket успешно прочитал 0 байт :( проблемы
Здравствуйте, vvv848165@ya.ru, Вы писали:

VYR>кстати ты прав но почему для закрытых сокетов есть отдельные коды ошибок?


Про какие именно коды ошибок идёт речь? Возможно ты говоришь о ситуации, когда сокет закрыт ненормальным образом, например connection reset.

Т.е. соединение может быть закрыто нормальным образом, когда та сторона вызывает shutdown, в этом случае приходят одни пакеты (FIN).

Соединение может быть "оборвано", например если на той стороне программа упала и соединение подчищает уже ОС или программа вызвала close без shutdown. В этом случае приходят другие пакеты (RST).

А ещё соединение может просто отвалиться по таймауту, если давно не приходило никаких пакетов с той стороны. Это тоже ошибка.

В общем лучше всего подцепиться wireshark-ом и смотреть на конкретные пакеты и то, как они соотносятся с вызываемыми функциями/возвращаемыми значениями.