Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       io_getevents - Lire les événements d'E/S asynchrones de la file des événements terminés

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <linux/aio_abi.h>    /* Définition des types *io_* */
       #include <sys/syscall.h>      /* Définition des constantes                                             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);

       Note :  la  glibc  ne  fournit  pas  d'enveloppe  autour  de io_getevents(), nécessitant l'utilisation de
       syscall(2).

DESCRIPTION

       Remarque : cette page décrit l'interface de l'appel système Linux brut. La fonction enveloppe fournie par
       libaio utilise un type différent pour le paramètre ctx_id. Voir les NOTES.

       L'appel système io_getevents() essaye de lire de min_nr  à  nr  événements  de  la  file  des  événements
       terminés du contexte d'entrées-sorties asynchrones ctx_id.

       L'argument  timeout  indique  une  durée  maximale d'attente pour les événements et est indiqué comme une
       limite de temps relative dans une structure timespec(3).

       La durée indiquée sera arrondie à la granularité supérieure de l'horloge système et elle a la garantie de
       ne pas expirer plus tôt.

       Indiquer timeout comme NULL signifie bloquer indéfiniment jusqu'à ce qu'au moins min_nr événements  aient
       été obtenus.

VALEUR RENVOYÉE

       io_getevents()  renvoie  le  nombre  d'événements lus, zéro s'il n'y en a aucun, et moins de min_nr si le
       délai timeout a expiré. En cas d'interruption par un gestionnaire de signaux, la valeur renvoyée pourrait
       être non nulle et inférieure à min_nr.

       Pour les valeurs de retour en cas d'échec, consultez la section NOTES.

ERREURS

       EFAULT events ou timeout est un pointeur invalide.

       EINTR  L'appel a été interrompu par un gestionnaire de signal ; consultez signal(7).

       EINVAL ctx_id est invalide. min_nr ou nr est incorrect.

       ENOSYS io_getevents() n'est pas implémenté sur cette architecture.

VERSIONS

       Les appels système d'entrées-sorties asynchrones sont apparus dans Linux 2.5.

STANDARDS

       io_getevents() est spécifique à Linux et ne doit pas être utilisé dans des  programmes  destinés  à  être
       portables.

NOTES

       Vous voudrez sans doute utiliser la fonction enveloppe io_getevents() fournie par libaio.

       Remarquez que la fonction d'enveloppe libaio utilise un autre type (io_context_t) pour l'argument ctx_id.
       Remarquez  également  que  l'enveloppe libaio ne suit pas les conventions classiques de la bibliothèque C
       concernant l'indication des erreurs : en cas d'erreur, la fonction renvoie un nombre négatif  (la  valeur
       négative  de  l'une  des  valeurs indiquées dans la section ERREURS). Si l'appel système est invoqué avec
       syscall(2), la valeur de renvoi suit les conventions classiques pour indiquer l'erreur : -1,  avec  errno
       défini à une valeur (positive) de l'erreur.

BOGUES

       Un ctx_id invalide peut provoquer une erreur de segmentation au lieu de générer une erreur EINVAL.

VOIR AUSSI

       io_cancel(2), io_destroy(2), io_setup(2), io_submit(2), timespec(3), aio(7), time(7)

TRADUCTION

       La   traduction   française   de   cette   page   de   manuel   a   été   créée   par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>,  François  Micaux,  Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,      Thomas      Huriaux      <thomas.huriaux@gmail.com>,     Nicolas     François
       <nicolas.francois@centraliens.net>,    Florentin    Duneau    <fduneau@gmail.com>,     Simon     Paillard
       <simon.paillard@resel.enst-bretagne.fr>,     Denis    Barbier    <barbier@debian.org>,    David    Prévot
       <david@tilapin.org> et Jean-Philippe MENGUAL <jpmengual@debian.org>

       Cette traduction est une documentation libre ; veuillez vous  reporter  à  la  GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si  vous  découvrez  un  bogue  dans la traduction de cette page de manuel, veuillez envoyer un message à
       debian-l10n-french@lists.debian.org.

Pages du manuel de Linux 6.03                    30 octobre 2022                                 io_getevents(2)