Developer Guide and Reference

Contents

aio_write

Performs an asynchronous write operation.

Syntax

int aio_write(struct aiocb *aiocbp);
Description
The
aio_write()
function requests an asynchronous write operation, calling the function,
"WriteFile(hFile, lpBuffer, nNumberOfBytesToWrite, lpNumberOfBytesWritten, NULL);
where,
  • hFile
    is given by
    aiocbp->aio_fildes
  • lpBuffer
    is given by
    aiocbp->aio_buf
  • nNumberOfBytesToWrite
    is given by
    aiocbp->aio_nbytes
Use the function
aio_return()
to retrieve the actual bytes written in
lpNumberOfBytesWritten
.
Use the extension
aiocb->aio_offset == (intptr_t)-1
to start the write operation after the last written record. This extension avoids extra file positioning and enhances performance.
Returns
0
: On success
-1
: On error
To get the correct error code, use
errno
. To get the error that occurred during asynchronous write operation, use
aio_error()
function.