Man page - aio_write(3)

Packages contains this manual

Available languages:

en fr ja ru ro

Manual

aio_write

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
ATTRIBUTS
STANDARDS
HISTORIQUE
NOTES
VOIR AUSSI
TRADUCTION

NOM

aio_write - Écriture asynchrone

BIBLIOTHÈQUE

BibliothÚque de temps réel ( librt , -lrt )

SYNOPSIS

#include <aio.h>

int aio_write(struct aiocb * aiocbp );

DESCRIPTION

La fonction aio_write () met en file d’attente la requĂȘte d’E/S dĂ©crite par le tampon pointĂ© par aiocbp . Cette fonction est la version asynchrone de write (2). Les paramĂštres de l’appel sont

write(fd, buf, count)

correspondent (dans l’ordre) au membre aio_fildes , aio_buf et aio_nbytes de la structure pointĂ©e par aiocbp . Consultez aio (7) pour une description de la structure aiocb .

Si O_APPEND n’est pas dĂ©fini, la donnĂ©e est Ă©crite en commençant Ă  la position absolue aiocbp->aio_offset , quelle que soit la position actuelle dans le fichier. Si O_APPEND est dĂ©fini, les donnĂ©es sont Ă©crites Ă  la fin du fichier dans le mĂȘme ordre que aio_write (). AprĂšs cet appel, la valeur de la position « courante » dans le fichier est indĂ©finie.

« Asynchrone » signifie que cet appel se termine aussitĂŽt que la requĂȘte a Ă©tĂ© mise dans la file d’attente ; l’écriture peut ĂȘtre ou ne pas ĂȘtre achevĂ©e lorsque l’appel termine. On peut tester cet achĂšvement en utilisant aio_error (3). La valeur de retour d’une opĂ©ration d’E/S terminĂ©e peut ĂȘtre obtenue avec aio_return (3). La notification asynchrone de la fin de l’E/S peut ĂȘtre obtenue en dĂ©finissant aiocbp->aio_sigevent de façon appropriĂ©e. Consultez sigevent (3type) pour plus de dĂ©tails.

Si _POSIX_PRIORITIZED_IO est dĂ©finie et si le fichier le gĂšre, 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 normal 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 positionnĂ©e pour indiquer l’erreur. Si une erreur est dĂ©tectĂ©e plus tard, elle sera signalĂ©e Ă  l’aide de 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 valable ouvert en Ă©criture.

EFBIG

Le fichier est un fichier normal, 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

aio_write () n’est pas implĂ©mentĂ©.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes (7).

Image grohtml-3882376-1.png

STANDARDS

POSIX.1-2008.

HISTORIQUE

glibc 2.1. POSIX.1-2001.

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 car des rĂ©sultats indĂ©finis peuvent survenir. Les zones mĂ©moires atteintes doivent rester valables.

Des opĂ©rations d’E/S simultanĂ©es spĂ©cifiant la mĂȘme structure aiocb produisent des rĂ©sultats indĂ©finis.

VOIR AUSSI

aio_cancel (3), aio_error (3), aio_fsync (3), aio_read (3), aio_return (3), aio_suspend (3), lio_listio (3), aio (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 Thomas Vincent <tvincent@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 à debian-l10n-french@lists.debian.org .