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

Ваш аккаунт

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

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

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

Разрыв соединения

9.5K
07 января 2007 года
zergman
53 / / 09.11.2006
Есть консольная программа - порт маппер (редирект).
читаю с клиента так: recv(socketClientMapper,&qwe1,1,0);
посылаю серверу: send(sockMapperServer,&qwe1,1,0);
Читаю от серва: recv(sockMapperServer,&qwe2,1,0);
Даю клиенту: send(socketClientMapper,&qwe2,1,0);
Все засунуто в бесконечный цикл.
Есть пара вопросов:
1. Как обнаружить разрыв связи? (в том числе случайный).
Просто если оставить все так, то когда одна из сторон отрубаеся,
то второй стороне бесконечно посылается последний принятый байт.
2. Надо сделать так, когда клиент присылает "REQUEST_conntoserv' то маппер его подключает к серваку. Проблема в том что данные приходят и уходят по 1 байту, тоесть я не могу использовать
if(Received.Pos("REQUEST_conntoserv")>0), потому что комбинация приходит по буквам. Подскажите плиз как это организовать.
Заранее спасибо!
18K
07 января 2007 года
max_br
34 / / 10.12.2006
а что мешает сделать
if(recv()<=0) - произошол разрыв соединения

даже пересылая по 1 байту recv возвращает положительное значение

если 0 или <0 - то соединения уже не существует
9.5K
08 января 2007 года
zergman
53 / / 09.11.2006
Спасибо, помогло.
А на счет 2 вопроса есть какие либо идеи?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог