.\" 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; .\" } .TH io_prep_pread 3 2019-07-23 "Linux" "Linux AIO" .SH NAME io_prep_pread \- Set up asynchronous read .SH SYNOPSIS .nf .B #include .sp .br .B #include .br .sp .BI "inline void io_prep_pread(struct iocb *" iocb ", int " fd ", void *" buf ", size_t " count ", long long " offset ");" . .sp struct iocb { void *data; unsigned key; short aio_lio_opcode; short aio_reqprio; int aio_fildes; }; .fi .SH DESCRIPTION .BR io_prep_pread () is an inline convenience function designed to facilitate the initialization of the iocb for an asynchronous read operation. The first .I iocb->u.c.nbytes = count bytes of the file for which .I iocb->aio_fildes = fd is a descriptor are written to the buffer starting at .IR "iocb->u.c.buf = buf" . Reading starts at the absolute position .I ioc->u.c.offset = offset in the file. .PP This function returns immediately. To schedule the operation, the function .BR io_submit (3) must be called. .PP Simultaneous asynchronous operations using the same \fIiocb\fP produce undefined results. .SH "RETURN VALUES" None. .SH ERRORS None. .SH "SEE ALSO" .BR io (3), .BR io_cancel (3), .BR io_fsync (3), .BR io_getevents (3), .BR io_prep_fsync (3), .BR io_prep_pwrite (3), .BR io_queue_init (3), .BR io_queue_release (3), .BR io_queue_run (3), .BR io_queue_wait (3), .BR io_set_callback (3), .BR io_submit (3), .BR errno (3).