sockets

From
niro ()
To
All
Date
2002-08-16T09:00:11Z
Area
SU.WINDOWS.NT.PROG
From: "niro" <niro@krista.ru>


Привет, всем!

СИТУАЦИЯ: клиент слушает сокет - сервер пишет в сокет. (TCP cокеты).

ПРОБЛЕМА: при закрытии серверного сокета операция recv на клиенте не
возвращает код ошибки, т.е. идет постоянно корректное срабатывание с
нулевым размером получаемых данных. Я обратился к MSDN, там серым по
белому прописано, что необходима следующая последовательность:

shutdown(sock, disable_code); // disable code - на запись, чтение и т.д. в
сокет
closesocket(sock)

Дык вот при таком раскладе (либо при использовании только closesocket) и
возникает описанная выше ситуация. Временно извратился и сразу после
закрытия сокета делаю WSACleanup (в этом случае операции send\recv на
удаленной машине возвращают SOCKET_ERROR). Это в общем криво. Может
кто подскажет как побороть это?

--
Respectueusement,
dr.niro



--- ifmail v.2.15dev5
 * Origin: Krista NPO (2:5020/400)