io_prep_pread (3)
Leading comments
static inline void io_prep_pread(struct iocb *iocb, int fd, void *buf, size_t count, long long offset) { memset(iocb, 0, sizeof(*iocb)); iocb->aio_fildes = fd; iocb->aio_lio_opcode = IO_CMD_PREAD; iocb->aio_reqprio = 0; iocb->u.c.buf = buf; iocb->u.c.nbytes = count; iocb->u.c.offset = offset; }
NAME
io_prep_pread - Set up asynchronous readSYNOPSIS
#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; };
DESCRIPTION
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.