Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Сети > recv пропадание данных при задержке вызова функции


Автор: GolIy 27.4.2008, 18:14
Привет.
Есть обычный серв. Он принимает данные от клиента, парсит их продолжительное время, и отслыает ответ. Проблема такая :
допустим клиент послал данные;
серва обрабатывает, пока идёт обработка я recv не делаю;
клиент, во время обработки, посылает ещё данные;
и тут глюк - сервер по окончании обработки вызывает фанк recv - но ничего нет :( Т.е. получается, если клиент отправил данные, нужно чтобы по любому на серве был тут же сделан recv иначе данные пропадут... 
Я предпологаю, есть какие нить настройки, которые задают время ожидания, т.е. грубо говоря скока данные буду ждать чтобы их отрисивли.
Но в мсдн насчот этого ничего не нашёл.

Всё. Оказывается мне приходило несколько мессаг, просто, они заканчивались все нулём, и я выводил как строчку. И думал что сообщения пропадают. На самом деле, если пришли ещё данные, но те ещё не отресивели, он просто клеит. Всё ок  smile 

Автор: nerdy_weirdie 6.5.2008, 04:01
Используй select()

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)