
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
13.08.2005, 23:54
|
|||
|---|---|---|---|
select |
|||
|
#18+
Всем привет. Есть TCP / IP сервер(Unix). Клиентcкое приложение закрывает сетевое соединение. Системный вызов select на сервере отлавливает это событие. Дискриптор получен. Каким образом можно определить факт закрытия сокета на клиенте (валидность сокета). Операции ввода вывода в этом месте производить нельзя. По сему обработку ошибок на read,write,send,recv не предлагать. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.08.2005, 13:15
|
|||
|---|---|---|---|
select |
|||
|
#18+
Если сокет уже закрылся - то любое обращение к нему приведет к ошибке. Можно попробовать что-то безобидное типа getsockopt, getpeername или getsockname. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.08.2005, 16:26
|
|||
|---|---|---|---|
select |
|||
|
#18+
--null--Если сокет уже закрылся - то любое обращение к нему приведет к ошибке. Можно попробовать что-то безобидное типа getsockopt, getpeername или getsockname. Thanks Я уже выкрутился через ioctl вот так : Код: plaintext 1. 2. 3. 4. 5. возвращает socket 0 error [22] [Invalid argument] Если кото знает как получить более точную ошибку, колитесь, думаю обществу пригодится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.08.2005, 08:36
|
|||
|---|---|---|---|
|
|||
select |
|||
|
#18+
onstat-Если кото знает как получить более точную ошибку, колитесь, думаю обществу пригодится. через тот же селект, установив только fd_set* exceptfds. Если сокет отвалился будет exception ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2032897]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
89ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 424ms |

| 0 / 0 |
