LINUX.ORG.RU

о методе select()


0

0

Народ помогите пожалуйста в следующем вопросе ... Потребовалось создать небольшую программую использующую метод select() которая будет выдавать различные действия при поступлении сигнала в сокет ... (раньше к сожалению селектом не пользовался) прочитав описание метода не вынес для себя ничего для работы именно с сокетом :(

если можно то приведите плз небольшой фрагмент кода или дайте ссылку на удобоваримый источник с нормальными примерами использования селекта в данном аспекте ....

заранее благодарен


Какой язык программирования и какую используешь библиотеку? Если всё-таки это обычный Си (а слово "метод" в топике намекает на что-то другое), то в man select есть секция EXAMPLE.

Deleted
()
Ответ на: комментарий от Deleted

системный вызов ) пардон за метод ) у меня фря 6.2 там секции примеры в манах не обнаруживается (

s3rg
() автор топика

select() example не гуглится чтоли?

Rastafarra ★★★★
()

"В дополнение к предыдущим ораторам могу добавить, что все это (и многое другое) разжевано в UNP Стивенса. Прочитай уже книжку, программист!" (с) Onanim (*) (28.10.2008 17:45:40)

true_admin ★★★★★
()

  fd_set set;
  struct timeval tv;
  char recline[1000];

  FD_ZERO(&rset);
  FD_SET(0, &rset);  //add standard input
  FD_SET(sockfd, &rset);
  tv.tv_sec = 180;
  tv.tv_usec = 0;

  select(sockfd+1, &set, NULL, NULL, &tv);
  if (FD_ISSET(sockfd, &set))  { 	
	  read(sockfd, recline, 999);
	  printf("%s",recline);
  };

Выдрал из курсача 4х-летней давности.
Насколько помню это был клиент для консольного чата. select опрашивал сокет и стандартный ввод. Возможно оно даже работает :)

nu11 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.