io_getevents
Table des matières
Retour à l'index
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)
Sinon, la bibliothèque d'E/S asynchrones ((libaio, -laio) ; voir les
VERSIONS.
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 VERSIONS.
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 VERSIONS.
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
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.
STANDARDS
Linux.
HISTORIQUE
Linux 2.5.
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 à
Index
- NOM
-
- BIBLIOTHÈQUE
-
- SYNOPSIS
-
- DESCRIPTION
-
- VALEUR RENVOYÉE
-
- ERREURS
-
- VERSIONS
-
- STANDARDS
-
- HISTORIQUE
-
- BOGUES
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:02 GMT, September 19, 2025