|
Программирование C / C++ / Visual C++ / Delphi / Visual Basic / ASM / Windows / Pascal |
|
Опции темы | Оценить тему |
11.12.2010, 11:43 | #1 |
Почти участник
Регистрация: 02.02.2008
Сообщений: 1,843
Репутация: 5599
|
winsock: определить отключение
Есть сокет, нужно быстро определить, подключен ли он в данный момент. В фреймворках вроде Qt, к примеру, есть сигналы onDisconnected, которые умеют быстро сообщать о дисконнекте удаленного хоста. Сейчас же понадобилось написать приложение на C, соответственно, фреймворки использовать нельзя. Как это сделать?
В гугле рабочего кода не нашел =( Решено, см. пост №3 Последний раз редактировалось RankoR; 11.12.2010 в 23:44. |
Плюсанул RankoR : |
11.12.2010, 15:19 | #2 |
Участник
Регистрация: 06.08.2006
Сообщений: 243
ICQ: 272727765 Репутация: 406
|
winsock разный есть. Если беркли, то select на чтение с минимальным таймаутом вернет ошибку. Если событийные виндовые WSA*** там вроде свой колбек есть.
__________________
Мой блог - Mac, Qt и немного Delphi. |
11.12.2010, 20:40 | #3 |
Почти участник
Регистрация: 02.02.2008
Сообщений: 1,843
Репутация: 5599
|
Sax-mmS, SOCKET_ERROR вернет? Т.е. нужно передать ему указатель (struct fd_set) в параметр, отвечающий за чтение? И, если не трудно, приведи пример правильного заполнения структуры timeval для этой цели.
Добавлено через 3 часа 2 минуты Разобрался, спасибо Sax-mmS'у =) Код: PHP код:
Последний раз редактировалось RankoR; 11.12.2010 в 23:43. Причина: Добавлено сообщение |