Rechercher une page de manuel
aio_write
Langue: fr
Version: 14 novembre 2003 (ubuntu - 16/08/07)
Section: 3 (Bibliothèques de fonctions)
NOM
aio_write - Écriture asynchroneSYNOPSIS
#include <aio.h>
int aio_write(struct aiocb *aiocbp);
DESCRIPTION
La fonction aio_write() sollicite un « n = write(fd, buf, count) » asynchrone avec fd, buf, count donnés respectivement par aiocbp->aio_fildes, aiocbp->aio_buf, aiocbp->aio_nbytes, L'état de retour n peut être récupéré à l'achèvement en utilisant aio_return(3).Si O_APPEND n'est pas défini, la donnée est écrite en commençant au décalage absolu du fichier aiocbp->aio_offset, quelle que soit la position actuelle dans le fichier. Si O_APPEND est défini, la donnée est écrite à la fin du fichier. Après cette requête, la valeur de la position « courante » dans le fichier est indéfinie.
« Asynchrone » signifie que cet appel s'achève aussitôt que la requête ait été mise dans la file d'attente ; l'écriture peut être ou ne pas être achevée lorsque l'appel s'achève. On peut tester cet achèvement en utilisant aio_error(3).
Si _POSIX_PRIORITIZED_IO est définie et si le fichier le supporte, l'opération asynchrone est soumise à une priorité égale à celle du processus appelant moins aiocbp->aio_reqprio.
Le membre aiocbp->aio_lio_opcode est ignoré.
Aucune donnée n'est écrite dans un fichier régulier au-delà de son décalage maximum.
VALEUR RENVOYÉE
En cas de réussite, 0 est renvoyé. En cas d'erreur, la requête n'est pas mise dans la file d'attente, -1 est renvoyé et errno est définie en conséquence. Si une erreur est détectée plus tard, elle sera signalée via aio_return(3) (état de retour -1) et aio_error(3) (état d'erreur : tout ce qu'on veut, récupéré dans errno, comme EBADF).ERREURS
- EAGAIN
- Ressources insuffisantes.
- EBADF
- aio_fildes n'est pas un descripteur de fichier valide ouvert en écriture.
- EFBIG
- Le fichier est un fichier régulier, nous voulons écrire au moins un octet, mais la position de départ est égale, ou au-delà du décalage maximum du fichier.
- EINVAL
- Une ou plusieurs valeurs parmi aio_offset, aio_reqprio, aio_nbytes ne sont pas valables.
- ENOSYS
- La fonction n'est pas implémentée sur ce système.
NOTES
C'est une bonne idée de mettre à zéro le bloc de contrôle avant de l'utiliser. Ce bloc de contrôle ne doit pas être modifié pendant l'opération d'écriture. Il ne faut pas accéder à la zone tampon à écrire pendant l'opération ou bien des résultats indéfinis peuvent survenir. Les zones mémoires atteintes doivent rester valables.CONFORMITÉ À
POSIX.1-2001VOIR AUSSI
aio_cancel(3), aio_error(3), aio_fsync(3), aio_read(3), aio_return(3), aio_suspend(3)TRADUCTION
Cette page de manuel a été traduite et mise à jour par Alain Portal <aportal AT univ-montp2 DOT fr> entre 2004 et 2006.La traduction de cette page de manuel est basée sur les traductions disponibles sur http://manpagesfr.free.fr/, mais est gérée par l'équipe francophone de traduction de Debian au travers de la liste de discussion debian-l10n-french.
Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C <section> <page_de_man> ».
il ne faut pas pénétrer trop profond, ou alors gare à l'explosion.
-+- Alexandre Dumas (1802-1870) -+-
Contenus ©2006-2008 Benjamin Poulain
Design ©2006-2008 Maxime Vantorre