The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

пример показывающий работу с сокетами через select() (select)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: select,  (найти похожие документы)
Date: Thu, 7 Feb 2002 07:17:23 +0000 (UTC) From: "Evgeny G. Narumov" <john@energy.com.ru> Newsgroups: fido7.ru.unix.prog Subject: пример показывающий работу с сокетами через select() > Ок, я понял, что можно с помощью select'a обрабатывать толпу сокетов, но тогда > нужно заводить массив сокетов или как ? > Можете привести маленький пример показывающий работу с select'ом ? ioctlsocket(sockfd1, FIONBIO, &bTrue); sndto = sendto(sockfd1,buff,len_buff,NULL,(const struct sockaddr *)&client_addr1,sizeof(struct sockaddr)); // посылаем широковещательный запрос, получаем одновременно // туеву хучу ответов, разбираем их: int rc = 1 ; int siz = sizeof(recv_addr1); while (rc >0) { rc = select(0, &stFDSet, NULL, NULL, &stTimeVal); if (rc == SOCKET_ERROR) // орем на всю систему - ошибка сокета; if (rc == 0) flTimeOut = true; // timeout больше ничего не пришло, хорош ждать. if (rc > 0) recvfrom(sockfd1,buff_recv[count_buff],sizeof(buff_recv[count_buff]),0, (struct sockaddr *)&recv_addr1,&siz); // принимаем и заполняем массив буферов. }

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Спонсоры:
Слёрм
Inferno Solutions
Hosting by Ihor
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2019 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру