table of contents
io_getevents(2) | System Calls Manual | io_getevents(2) |
NUME¶
io_getevents - citește evenimentele de In/Ieș asincrone din coada de completare
BIBLIOTECA¶
Biblioteca C standard (libc, -lc)
Alternativ, biblioteca de In/Ieș asincronă (libaio, -laio); a se vedea VERSIUNI.
SINOPSIS¶
#include <linux/aio_abi.h> /* Definiția tipului *io_*. */ #include <sys/syscall.h> /* Definiția constantelor SYS_* */ #include <unistd.h>
int syscall(SYS_io_getevents, aio_context_t ctx_id, long min_nr, long nr, struct io_event *events, struct timespec *timeout);
Nota: glibc nu oferă o funcție învăluitoare pentru io_getevents(), fiind necesară utilizarea syscall(2).
DESCRIERE¶
Notă: această pagină descrie interfața brută de apelare a sistemului Linux. Funcția de învăluire furnizată de libaio utilizează un tip diferit pentru argumentul ctx_id. A se vedea VERSIUNI.
Apelul de sistem io_getevents() încearcă să citească cel puțin min_nr evenimente și până la nr evenimente din coada de completare a contextului AIO specificat de ctx_id.
Argumentul timeout specifică timpul de așteptare a evenimentelor și este specificat ca un timp de așteptare relativ într-o structură timespec(3).
Timpul specificat va fi rotunjit la granularitatea (finețea) ceasului de sistem și se garantează că nu va expira mai devreme.
Specificarea timeout ca NULL înseamnă blocarea pe termen nedefinit până când se obțin cel puțin min_nr evenimente.
VALOAREA RETURNATö
În caz de succes, io_getevents() returnează numărul de evenimente citite. Acesta poate fi 0, sau o valoare mai mică decât min_nr, dacă timeout a expirat. Poate fi, de asemenea, o valoare diferită de zero, mai mică decât min_nr, dacă apelul a fost întrerupt de un gestionar de semnal.
Pentru returnarea eșecului, a se vedea VERSIUNI.
ERORI-IEȘIRE¶
VERSIUNI¶
Probabil că doriți să utilizați funcția de învăluire io_getevents() furnizată de libaio.
Rețineți că funcția de învăluire libaio utilizează un tip diferit (io_context_t) pentru argumentul ctx_id. Rețineți, de asemenea, că funcția de învăluire libaio nu respectă convențiile obișnuite ale bibliotecii C pentru indicarea erorilor: în caz de eroare, aceasta returnează un număr de eroare negat (negativul uneia dintre valorile enumerate în ERRORS). Dacă apelul de sistem este invocat prin syscall(2), atunci valoarea de returnare urmează convențiile obișnuite pentru indicarea unei erori: -1, cu errno configurată la o valoare (pozitivă) care indică eroarea.
STANDARDE¶
Linux.
ISTORIC¶
Linux 2.5.
ERORI¶
Un ctx_id nevalid poate cauza o eroare de segmentare în loc să genereze eroarea EINVAL.
CONSULTAȚI ȘI¶
io_cancel(2), io_destroy(2), io_setup(2), io_submit(2), timespec(3), aio(7), time(7)
TRADUCERE¶
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
2 mai 2024 | Pagini de manual Linux (nepublicate) |