epoll_create(2) System Calls Manual epoll_create(2) NUME epoll_create, epoll_create1 - deschide un descriptor de fiier epoll BIBLIOTECA Biblioteca C standard (libc, -lc) SINOPSIS #include int epoll_create(int size); int epoll_create1(int flags); DESCRIERE epoll_create() creeaza o noua instana epoll(7). Incepand cu Linux 2.6.8, argumentul size este ignorat, dar trebuie sa fie mai mare decat zero; a se vedea ISTORIC. epoll_create() returneaza un descriptor de fiier care se refera la noua instana epoll. Acest descriptor de fiier este utilizat pentru toate apelurile ulterioare la interfaa epoll. Atunci cand nu mai este necesar, descriptorul de fiier returnat de epoll_create() trebuie inchis prin utilizarea close(2). Atunci cand toi descriptorii de fiiere care se refera la o instana epoll au fost inchii, nucleul distruge instana i elibereaza resursele asociate pentru reutilizare. epoll_create1() Daca flags este 0, atunci, in afara de faptul ca se renuna la argumentul invechit size, epoll_create1() este la fel ca epoll_create(). Urmatoarea valoare poate fi inclusa in flags pentru a obine un comportament diferit: EPOLL_CLOEXEC Stabilete fanionul ,,close-on-exec" (FD_CLOEXEC) pe noul descriptor de fiier. A se vedea descrierea fanionului O_CLOEXEC in open(2) pentru motivele pentru care acest lucru poate fi util. VALOAREA RETURNATA In caz de succes, aceste apeluri de sistem returneaza un descriptor de fiier (un numar intreg nenegativ). In caz de eroare, se returneaza -1, iar errno este configurata pentru a indica eroarea. ERORI-IEIRE EINVAL argumentul size nu este pozitiv. EINVAL (epoll_create1()) Valoare nevalida specificata in flags. EMFILE Limita per proces a numarului de descriptori de fiiere deschise a fost atinsa. ENFILE Limita la nivel de sistem a numarului total de fiiere deschise a fost atinsa. ENOMEM Nu a existat suficienta memorie pentru a crea obiectul nucleului. STANDARDE Linux. ISTORIC epoll_create() Linux 2.6, glibc 2.3.2. epoll_create1() Linux 2.6.27, glibc 2.9. In implementarea iniiala a epoll_create(), argumentul size informa nucleul cu privire la numarul de descriptori de fiiere pe care apelantul se atepta sa ii adauge la instana epoll. Nucleul folosea aceasta informaie ca un indiciu pentru cantitatea de spaiu pe care trebuia sa o aloce iniial in structurile de date interne care descriu evenimentele (daca era necesar, nucleul aloca mai mult spaiu daca utilizarea apelantului depaea indicaia data in size). In prezent, acest indiciu nu mai este necesar ( nucleul dimensioneaza in mod dinamic structurile de date necesare fara a avea nevoie de indiciu), dar size trebuie sa fie in continuare mai mare decat zero, pentru a asigura compatibilitatea retroactiva atunci cand noile aplicaii epoll sunt rulate pe nuclee mai vechi. Inainte de Linux 2.6.29, un parametru de nucleu /proc/sys/fs/epoll/max_user_instances limita numarul de epoll-uri active pentru fiecare ID de utilizator real i facea ca epoll_create() sa eueze cu EMFILE la depairea acestei valori. CONSULTAI I close(2), epoll_ctl(2), epoll_wait(2), ioctl_eventpoll(2), epoll(7) TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Pagini de manual de Linux 6.9.1 12 iunie 2024 epoll_create(2)