The OpenNET Project / Index page

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

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

epoll_wait (2)
  • >> epoll_wait (2) ( Русские man: Системные вызовы )
  • epoll_wait (2) ( Linux man: Системные вызовы )
  •  

    НАЗВАНИЕ

    epoll_wait - ждать события ввода/вывода на описателе файла epoll  

    СИНТАКСИС

    #include <sys/epoll.h>

    int epoll_wait(int epfd, struct epoll_event * events, int maxevents, int timeout)  

    ОПИСАНИЕ

    Ожидает события на описателе файлов epoll - epfd максимум в течении timeout миллисекунд. Область памяти, на которую указывает events будет содержать события, доступные для вызываемого. Может быть возвращено до maxevents событий от epoll_wait(2). Параметр maxevents должен быть больше нуля. Указание timeout равным -1 заставит epoll_wait(2) ожидать события бесконечно, а указание timeout равного нулю заставит epoll_wait(2) завершать работу немедленно, если нет доступных событий (код возврата в этом случае равен нулю). Структура struct epoll_event определена так:

    
            typedef union epoll_data {
                    void *ptr;
                    int fd;
                    __uint32_t u32;
                    __uint64_t u64;
            } epoll_data_t;
    
            struct epoll_event {
                    __uint32_t events;      /* события epoll */
                    epoll_data_t data;      /* переменные данных пользователя */
            };
    
    

    Данные data каждой возвращаемой структуры будет содержать те же данные, что устанавливал пользователь с помощью epoll_ctl(2) (EPOLL_CTL_ADD,EPOLL_CTL_MOD) в то время как члены events будут содержать возвращаемый бит поля событий.  

    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ

    При нормальном завершении epoll_wait(2) вовзращает число описателей файлов, готовых для запрошенной операции ввода/вывода, или ноль при отсутствии готовых описателей файлов во время указанных timeout миллисекунд. При ошибках epoll_wait(2) возвращает -1 и устанавливает errno соответственно ошибке.  

    НАЙДЕННЫЕ ОШИБКИ

    EBADF
    epfd не является корректным описателем файла.
    EINVAL
    Переданный описатель файла epfd, не является описателем файла epoll или параметр maxevents меньше или равен нулю.
    EFAULT
    Область памяти, на которую указывает events недоступна на запись (нет прав).
     

    СООТВЕТСТВИЕ СТАНДАРТАМ

    epoll_wait(2) является новым API, представленным в ядре Linux 2.5.44. Интерфейс должен стать окончательно завершенным к ядру Linux 2.5.66.  

    СМ. ТАКЖЕ

    epoll_ctl(2), epoll_create(2), epoll(4)


     

    Index

    НАЗВАНИЕ
    СИНТАКСИС
    ОПИСАНИЕ
    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
    НАЙДЕННЫЕ ОШИБКИ
    СООТВЕТСТВИЕ СТАНДАРТАМ
    СМ. ТАКЖЕ


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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