io_submit — submit asynchronous I/O blocks for processing
#include <libaio.h>
int
io_submit( |
aio_context_t | ctx_id, |
long | nr, | |
struct iocb ** | iocbpp) ; |
![]() |
Note |
---|---|
Link with |
io_submit
() queues
nr
I/O request blocks
for processing in the AIO context ctx_id
. iocbpp
should be an array of
nr
AIO request
blocks, which will be submitted to context ctx_id
.
On success, io_submit
()
returns the number of iocb
s submitted (which may be
0 if nr
is zero); on
failure, it returns one of the errors listed under
ERRORS.
The aio_context
specified
by ctx_id
is
invalid. nr
is
less than 0. The iocb
at *iocbpp[0] is
not properly initialized, or the operation specified is
invalid for the file descriptor in the iocb
.
One of the data structures points to invalid data.
The file descriptor specified in the first
iocb
is
invalid.
Insufficient resources are available to queue any
iocb
s.
io_submit
() is not
implemented on this architecture.
io_submit
() is Linux
specific and should not be used in programs that are intended
to be portable.
io_setup(2), io_destroy(2), io_getevents(2), io_cancel(2)
|