Man Linux: Main Page and Category List

NAME

       io_queue_wait - Wait for io requests to complete

SYNOPSIS

       #include <errno.h>

       #include <libaio.h>

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

DESCRIPTION

       Attempts to read an event from the completion queue for the aio_context
       specified by ctx_id.

RETURN VALUES

       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.

RETURN VALUES

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

ERRORS

       EFAULT iocbs  referenced  data  outside  of  the  program’s  accessible
              address space.

       EINVAL ctx_id refers to an unitialized aio context, the iocb pointed to
              by iocbs contains an improperly initialized iocb.

       ENOSYS Not implemented.

SEE ALSO

       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).