![]() |
Модераторы: feodorv |
![]() ![]() ![]() |
|
hawk3500 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 246 Регистрация: 6.2.2009 Репутация: нет Всего: 2 |
Здравствуйте.
Подскажите пожалуйста на какое конкретно событие реагирует функция селект? Вот пример кода:
Не могу понять что нужо вот в таком сслучае сделать в EventSelect чтобы код вышел из бесконечного ожидания. Пробывал привязывать к Sock Event на read/write и в потоке использовать WSASetEvent...не сработало. Подскажите механизм работы select. Заранее благодарен. С уважением, HAWK3500. --------------------
воин dzen'a |
|||
|
||||
feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 10 Всего: 45 |
Честно говоря, для винсокетов select является своеобразным костылём и введён для совместимости с BSD-сокетами. Вместо этой функции стоит использовать связывание сокета с событием и дальнейшим ожиданием через WSAWaitForMultipleEvents. Такой вариант с пробуждением можно подсмотреть здесь. -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
Олег2005 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 421 Регистрация: 26.5.2005 Где: Рига Латвия Репутация: 6 Всего: 11 |
||||
|
||||
hawk3500 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 246 Регистрация: 6.2.2009 Репутация: нет Всего: 2 |
Вопрос разрешился.
Заключался в том как используя поток EventSelect вывести основной поток из бесонечного ожидания в selesct. Всем респект ![]() ![]() --------------------
воин dzen'a |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Сети | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |