Функция select

Discussion in 'WASM.NETWORKS' started by ubil, Jul 20, 2006.

  1. ubil

    ubil New Member

    Blog Posts:
    0
    Joined:
    Nov 7, 2004
    Messages:
    203
    Location:
    ODESSA:)
    Первое что интересует - это изменяет ли она посылаемые в нее наборы сокетов? В MSDN это явно не написано, хотя вроде бы подразумевается. Хотя я по поведению своей программы что-то не замечаю чтобы наборы менялись при заметных для select событиях.
    Если таки select оставляет наборы такими же как в нее были посланы, то вообще какой смысл имеет информация о количестве элементов, удовлетворяющих условиям ее срабатывания? Ведь останется по-прежнему неизвестно, какие именно сокеты нужно опрашивать в данный момент.
    Я смотрел примеры работы с select, но там в нее посылался только один набор с одним-единственным элементом. Я же бы хотел посылать набор, в который входят сокеты сервера и всех клиентов и обрабатывать события вроде появления новых клиентов и запросов ими сервиса в одном цикле/потоке. Как вообще такое должно делаться?
     
  2. Hgni

    Hgni New Member

    Blog Posts:
    0
    Joined:
    Jul 20, 2006
    Messages:
    10
    Посмотрите книгу "эффективное программирование для tcp-ip", автора точно не помню, может быть Йон Снейдер, так там описывается кратко реализация select для виндовс и унекс.
     
  3. ubil

    ubil New Member

    Blog Posts:
    0
    Joined:
    Nov 7, 2004
    Messages:
    203
    Location:
    ODESSA:)
    Спасибо за ссылку. Только в этой книге как мне показалось, совсем немного написано про select. Зато я здесь на сайте статью нашел "Руководство Beej по сетевому программированию, используя интернет-сокеты", в ней все что мне надо было написано. Кстати, код который я написал раньше почти такой же как и в статье, просто я его тестил, соединяясь "Оперой", а она много чего лишнего походу посылает:)
     
  4. slow

    slow New Member

    Blog Posts:
    0
    Joined:
    Dec 27, 2004
    Messages:
    615
    Select возвращает списки сокетов готовых для чтения/записи/ошибочных. С Самими сокетами она ничего не делает.