aio_write
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,
- hFileis given byaiocbp->aio_fildes
- lpBufferis given byaiocbp->aio_buf
- nNumberOfBytesToWriteis given byaiocbp->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.