NAME
io_getevents - read asynchronous I/O events from the completion queue
SYNOPSIS
#include <linux/time.h>
#include <libaio.h>
I int io_getevents(aio_context_t ctx_id , long min_nr , long nr ,
I struct io_event * events \
", struct timespec *" timeout );
Link with -laio.
DESCRIPTION
R io_getevents ()
attempts to read at least min_nr events and
up to nr events from the completion queue of the AIO context
specified by ctx_id.
timeout specifies the amount of time to wait for events,
where a NULL timeout waits until at least min_nr events
have been seen.
Note that timeout is relative and will be updated if not NULL
and the operation blocks.
RETURN VALUE
On success,
R io_getevents ()
returns the number of events read: 0 if no events are
available or < min_nr if the timeout has elapsed;
on failure, it returns one of the errors listed under ERRORS.
ERRORS
EINVAL
ctx_id is invalid. min_nr is out of range or nr is
out of range.
EFAULT
Either events or timeout is an invalid pointer.
ENOSYS
R io_getevents ()
is not implemented on this architecture.
VERSIONS
The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
CONFORMING TO
R io_getevents ()
is Linux specific and should not be used in
programs that are intended to be portable.
SEE ALSO