The <aio.h> header defines the aiocb structure which includes the following members:
int aio_fildes file descriptor off_t aio_offset file offset volatile void* aio_buf location of buffer size_t aio_nbytes length of transfer int aio_reqprio request priority offset struct sigevent aio_sigevent signal number and value int aio_lio_opcode operation to be performed
This header also includes the following constants:
AIO_ALLDONE A return value indicating that none of the requested operations could be canceled since they are already complete.
AIO_CANCELED A return value indicating that all requested operations have been canceled.
AIO_NOTCANCELED A return value indicating that some of the requested operations could not be canceled since they are in progress.
LIO_NOP A lio_listio(3RT) element operation option indicating that no transfer is requested.
LIO_NOWAIT A lio_listio() synchronization operation indicating that the calling thread is to continue execution while the lio_listio() operation is being performed, and no notification is given when the operation is complete.
LIO_READ A lio_listio() element operation option requesting a read.
LIO_WAIT A lio_listio() synchronization operation indicating that the calling thread is to suspend until the lio_listio() operation is complete.
LIO_WRITE A lio_listio() element operation option requesting a write.
lseek(2), read(2), write(2), fsync(3C), libaio(3LIB), lio_listio(3RT)