Set up asynchronous read
#include <errno.h> #include <libaio.h> inline void io_prep_pread(struct iocb *iocb, int fd, void *buf, size_t count, long long offset); " struct iocb { void *data; unsigned key; short aio_lio_opcode; short aio_reqprio; int aio_fildes; };
io_prep_pread is an inline convenience function designed to facilitate the initialization of the iocb for an asynchronous read operation.
The first iocb->u.c.nbytes = count bytes of the file for which iocb->aio_fildes = fd is a descriptor are written to the buffer starting at iocb->u.c.buf = buf. Reading starts at the absolute position ioc->u.c.offset = offset in the file.
This function returns immediately. To schedule the operation, the function io_submit must be called.
Simultaneous asynchronous operations using the same iocb produce undefined results.
None.
None.
io(3), io_cancel(3), io_fsync(3), io_getevents(3), io_prep_fsync(3), io_prep_pwrite(3), io_queue_init(3), io_queue_release(3), io_queue_run(3), io_queue_wait(3), io_set_callback(3), io_submit(3), errno(3).