Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[54.163.62.42] |
|
Сообщ.
#1
,
|
|
|
Значит есть сервер-клиентская прога на сокетах, которая работает так:
клиенты работают в синхронном режиме, т.е. Send & Recieve крутятся в цикле. сервер работает в асинхронном режиме, но выдает новую инфу, только когда все клиенты ответят... Проблема такая: Когда одно из клиентских приложений прекращает работу, как узнать об этом. Я не имею ввиду когда пользователь нажал "Exit", а когда просто убили процесс. Как есть сейчас, в методе асинхронном OnDataRecieved(т.е. этот метод вытаскивает инфу из сокета, когда что то пришло) на сервере, ловлю все Exception и просто посылаю тестовый запрос в синхронном режиме(Send & Recieve) всем клиентам в новых потоках, и смотрю что получил, но может можно просто как то по Socket.XXX(где XXX - искомый метод/свойство) узнать что сокет вылетел на той стороне, что должно быть легче....?! Заранее благодарен, Илья |