Man Aio_read en français
AIO_READ(3) Manuel du programmeur Linux AIO_READ(3)
NOM
aio_read - Lecture asynchrone.
SYNOPSIS
#include
int aio_read(struct aiocb *aiocbp);
DESCRIPTION
La fonction aio_read() sollicite un n = read(fd, buf, count) asyn-
chrone avec fd, buf, count donnes respectivement par
aiocbp->aio_fildes, aiocbp->aio_buf, aiocbp->aio_nbytes. L'etat de
retour n peut etre recupere a l'achevement en utilisant aio_return(3).
La donnee est lue en commencant au decalage absolu du fichier
aiocbp->aio_offset, quelque puisse etre la position actuelle du poin-
teur sur le fichier. Apres cette requete, la valeur de la position
courante du pointeur sur le fichier est indefinie.
Asynchrone signifie que cet appel s'acheve aussitot que la requete
ait ete mise dans la file d'attente ; la lecture peut etre ou ne pas
etre achevee lorsque l'appel s'acheve. On peut tester cet achevement en
utilisant aio_error(3).
Si _POSIX_PRIORITIZED_IO est definie et si le fichier le supporte,
l'operation asynchrone est soumise a une priorite egale a celle du pro-
cessus appelant moins aiocbp->aio_reqprio.
Le membre aiocbp->aio_lio_opcode est ignore.
Aucune donnee n'est lue dans un fichier regulier au-dela de son
decalage maximum.
VALEUR RENVOYEE
En cas de reussite, 0 est renvoye. En cas d'erreur, la requete n'est
pas mise dans la file d'attente, -1 est renvoye et errno est position-
nee en consequence. Si une erreur est detectee plus tard, elle sera
rapportee via aio_return(3) (etat de retour -1) et aio_error(3) (etat
d'erreur : tout ce qu'on veut, recupere dans errno, comme EBADF).
ERREURS
EAGAIN Ressources insuffisantes.
EBADF aio_fildes n'est pas un descripteur de fichier valide ouvert en
lecture.
EINVAL Une valeur ou plus parmi aio_offset, aio_reqprio, aio_nbytes
n'est pas valide.
ENOSYS La fonction n'est pas implementee sur ce systeme.
EOVERFLOW
Le fichier est un fichier regulier, nous avons commence la lec-
ture avant la fin de fichier et voulons au moins un octet, mais
la position de depart a depasse le decalage maximum du fichier.
NOTES
C'est une bonne idee que de mettre a zero le bloc de controle avant de
l'utiliser. Ce bloc de controle ne doit pas etre modifie pendant
l'operation de lecture. Il ne faut pas acceder a la zone tampon a lire
pendant l'operation ou bien des resultats indefinis peuvent survenir.
Les zones memoires atteintes doivent rester valides.
CONFORMITE
POSIX.1-2001.
VOIR AUSSI
aio_cancel(3), aio_error(3), aio_fsync(3), aio_return(3), aio_sus-
pend(3), aio_write(3)
TRADUCTION
Ce document est une traduction realisee par Alain Portal le 6 juillet 2005 et revisee le 14 aot 2006.
L'equipe de traduction a fait le maximum pour realiser une adaptation
francaise de qualite. La version anglaise la plus a jour de ce document
est toujours consultable via la commande : LANG=C man 3 aio_read .
N'hesitez pas a signaler a l'auteur ou au traducteur, selon le cas,
toute erreur dans cette page de manuel.
LDP 14 novembre 2003 AIO_READ(3)
|