Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Socket [D6]


Ruf ©   (2003-01-08 14:33:00) 

Есть Serversocket, к нему приконнекчены n client"ов.
Если клиентский комп вырубить, то никакого дисконнекта не происходить. Как обновить список активных соединений.


DJ_Sedoy   (2003-01-08 22:11:00) [1]

Странно. Почему не происходит? Все происходит, если я правильно понял вопрос.
Но вот количество соединений в обработчике события не уменьшается - оно уменьшится после выхода из обработчика


Malder   (2003-01-08 21:26:00) [2]

А на то существует система Ping Pong

Посылай некие сигнальные даные по каналу, на которые удаленный компьютер должен немедленно ответить. И установи TimeOut (ну что-нибудь типа 30с). По истечению TimeOut"а отсоединяй клиента


Verg   (2003-01-08 14:52:00) [3]

Установи сокету опцию SO_KEEPALIVE.
Правда KEEPALIVE-интервал по-умолчанию в виндах что-то около 2-х часов.
Для быстрой реакции на "исчезновение" клиента лучше использовать периодическое "зондирование" клиентов.


Наверх

Титульная страница Поиск, карта сайта Написать письмо