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   ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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⟩.