NOM
aio_fsync - Synchronisation de fichier asynchrone
SYNOPSIS
#include <aio.h>
int aio_fsync(int op, struct aiocb *aiocbp);
Éditer les liens avec -lrt.
DESCRIPTION
La fonction aio_fsync() effectue une synchronisation de toutes les opérations d’E/S asynchrones en cours associées à aiocbp->aio_fildes. Consultez aio(7) pour une description de la structure aiocb.
Plus précisément, si op est défini à O_SYNC, alors toutes les opérations d’E/S actuellement en file d’attente seront achevées comme avec un appel à fsync(2), et si op est défini à O_DSYNC, cet appel est la version asynchrone de l’appel fdatasync(2).
Veuillez noter qu’il ne s’agit que d’une requête ; cet appel n’attend pas la fin des E/S.
À part aio_fildes, le seul membre de la structure pointée par aiocbp qui soit utilisé par cet appel est le membre aio_sigevent (une structure sigevent décrite dans sigevent(7)) qui indique le type de notification asynchrone désiré à l’achèvement. Tous les autres membres sont ignorés.
VALEUR RENVOYÉE
En cas de réussite (la requête de synchronisation a été mise avec succès dans la file d’attente), la fonction renvoie 0. En cas d’erreur, -1 est renvoyé et errno est définie en conséquence.
ERREURS
EAGAIN |
Ressources insuffisantes. | ||
EBADF |
aio_fildes n’est pas un descripteur de fichier valable ouvert en écriture. | ||
EINVAL |
Ce fichier ne gère pas les E/S synchronisées, ou op n’est pas O_SYNC ou O_DSYNC. | ||
ENOSYS |
aio_fsync() n’est pas implémenté. |
VERSIONS
La fonction aio_fsync() est disponible depuis la glibc 2.1.
ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
CONFORMITÉ
POSIX.1-2001, POSIX.1-2008.
VOIR AUSSI
aio_cancel(3), aio_error(3), aio_read(3), aio_return(3), aio_suspend(3), aio_write(3), lio_listio(3), aio(7), sigevent(7)
COLOPHON
Cette page fait partie de la publication 5.07 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page, peuvent être trouvées à l’adresse https://www.kernel.org/doc/man-pages/.
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 [AT] laposte.net>, Thierry Vignaud <tvignaud [AT] mandriva.com>, François Micaux, Alain Portal <aportal [AT] univ-montp2.fr>, Jean-Philippe Guérard <fevrier [AT] tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon [AT] wanadoo.fr>, Julien Cristau <jcristau [AT] debian.org>, Thomas Huriaux <thomas.huriaux [AT] gmail.com>, Nicolas François <nicolas.francois [AT] centraliens.net>, Florentin Duneau <fduneau [AT] gmail.com>, Simon Paillard <simon.paillard [AT] resel.fr>, Denis Barbier <barbier [AT] debian.org> et David Prévot <david [AT] tilapin.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 [AT] lists.org>.