5.2.1.1.4. Asynchronous Read And Write System Calls
// Asynchronous single operation
int aio_read (struct aiocb *aiocbp);
int aio_write (struct aiocb *aiocbp);
// Query asynchronous operation status
int aio_error (struct aiocb *aiocbp);
// Get return status of completed operation
ssize_t aio_return (struct aiocb *aiocbp);
// Wait for completion of any listed operation
int aio_suspend (
struct aiocb *cblist [],
int n, struct timespec *timeout);
int aio_cancel (int fd, struct aiocb *aiocbp);
// Submit multiple asynchronous operations
int lio_listio (
int mode, struct aiocb *list [],
int nent, struct sigevent *sig);
struct aiocb {
int aio_fildes;
off_t aio_offset;
void *aio_buf;
size_t aio_nbytes;
int aio_reqprio;
struct sigevent aio_sigevent;
int aio_lio_opcode;
...
}