| readv | |||
Nomreadv, writev - Lire ou écrire un vecteur (vector).Synopsis#include <sys/uio.h>int readv(int fd, const struct iovec * vector, int count); int writev(int fd, const struct iovec * vector, int count);
struct iovec { Descriptionreadv lit les données depuis le descripteur de fichier fd, et place le resultats dans les buffers décrits par vector. Le nombre de buffers est indiqué par count. Les buffers sont remplis dans l'ordre spécifié. Le fonctionnement est identique à read à la seule différence que les données sont écrites dans vector plutôt que dans un buffer contigu.writev écrit les données se trouvant dans les buffers décrits par vector dans le descripteur de fichier fd. Le nombre de buffers est indiqué par count. Les buffers sont lus dans l'ordre spécifié. Le fonctionnement est identique à write a la seule différence que les données sont lues depuis vector plutôt que depuis un buffer contigu.
Valeur Renvoyéereadv renvoie le nombre d'octets lus s'il réussit.writev renvoie le nombre d'octets lus s'il réussit. En cas d'échec -1 est renvoyé, et errno contient le code d'erreur.
Erreurs
D'autres erreurs peuvent survenir, en fonction du type d'objet associé à fd. ConformitéBSD 4.4 (les fonctions readvetwritev sont apparues dans BSD 4.2), Unix98. La libc5 de Linux utilisait le type size_t pour le paramètre count ce qui est logique mais pas standard.Voir Aussiread(2) , write(2) , fprintf(3) , fscanf(3)
TraductionChristophe Blaess, 1997.
|