aio_fsync — asynchronous file synchronization
#include <aio.h>
int
aio_fsync( |
int | op, |
struct aiocb * | aiocbp) ; |
The aio_fsync
() function
does a sync on all outstanding asynchronous I/O operations
associated with aiocbp−>aio_fildes
.
More precisely, if op
is O_SYNC
, then all currently queued I/O
operations shall be completed as if by a call of fsync(2), and if op
is O_DSYNC
, this call is the asynchronous
analog of fdatasync(2). Note that
this is a request only — this call does not wait for
I/O completion.
Apart from aio_fildes
the
only field in the structure pointed to by aiocbp
that is used by this
call is the aio_sigevent
field
(a struct sigevent)
that indicates the desired type of asynchronous notification
at completion. All other fields are ignored.
On success (the sync request was successfully queued) this
function returns 0. On error −1 is returned, and
errno
is set appropriately.
Out of resources.
aio_fildes
is not a
valid file descriptor open for writing.
No synchronized I/O for this file is supported, or
op
is not
O_SYNC
or O_DSYNC
.