io_queue_wait(3) Linux AIO io_queue_wait(3)

io_queue_wait - Wait for io requests to complete

#include <errno.h>

#include <libaio.h>

int io_queue_wait(io_context_t ctx, const struct timespec *timeout);

io_queue_wait() attempts to read an event from the completion queue for the aio_context specified by ctx.


May return 0 if no events are available and the timeout specified by when has elapsed, where when == NULL specifies an infinite timeout. Note that the timeout pointed to by when is relative and will be updated if not NULL and the operation blocks. Will fail with -ENOSYS if not implemented.


On success, io_queue_wait() returns 0. Otherwise, -error is return, where error is one of the Exxx values defined in the Errors section.

iocbs referenced data outside of the program's accessible address space.
ctx refers to an uninitialized aio context, the iocb pointed to by iocbs contains an improperly initialized iocb.
Not implemented.

io(3), io_cancel(3), io_fsync(3), io_getevents(3), io_prep_fsync(3), io_prep_pread(3), io_prep_pwrite(3), io_queue_init(3), io_queue_release(3), io_queue_run(3), io_set_callback(3), io_submit(3), errno(3).

2019-07-23 Linux