Developer Guide and Reference

Contents

aio_read

Performs an asynchronous read operation.

Syntax

int aio_read(struct aiocb *aiocbp);
Description
The
aio_read()
function requests an asynchronous read operation, calling the function,
"ReadFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, NULL);"
where,
  • hFile
    is given by
    aiocbp->aio_fildes
  • lpBuffer
    is given by
    aiocbp->aio_buf
  • nNumberOfBytesToRead
    is given by
    aiocbp->aio_nbytes
Use the function
aio_return()
to retrieve the actual bytes read in
lpNumberOfBytesRead
.
Use the extension
aiocb->aio_offset == (intptr_t)-1
to start the read operation after the last read 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 read operation, use
aio_error()
function.