Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

send не сразу реагирует на разрыв

31K
18 июля 2008 года
PAB
5 / / 20.10.2007
Есть клиент и сервер. Сервер посылает клиенту сообщения посимвольно, но в случае разрыва соединения(клиент отрубился) - сервер посылает ещё несколько символов пока не "заметит" разрыв соединения.
Код:
int ret;
char c = 'a';
while (true)
{
   ret = send(sClient, &c, 1, 0);
   if (ret == SOCKET_ERROR)                            
   {
      cout << "Error" << endl;
      break;
   }
}

Если в цикл вставить задержку(Sleep) то количество "лишних" переданных символов становится меньше с увеличением задержки.
Интересует можно ли как-то избежать лишней передачи данных?
4.3K
18 июля 2008 года
flat
142 / / 27.12.2005
Это особенность TCP. Очень рекомендую книгу Йона Снейдера "Эффективное программирование TCP/IP".
31K
19 июля 2008 года
PAB
5 / / 20.10.2007
Спасибо, я прочту
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог