io_getevents
IO_GETEVENTS(2) Linux Programmer’s Manual IO_GETEVENTS(2)
NAME
io_getevents - Read asynchronous I/O events from the completion queue
SYNOPSIS
#include <linux/time.h>
#include <libaio.h>
extern int io_getevents (io_context_t ctx_id, long min_nr, long nr,
struct io_event *events, struct timespec *timeout);
DESCRIPTION
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
io_getevents returns the number of events read: 0 if no events are
available or < min_nr if the timeout has elapsed.
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 io_getevents is not implemented on this architecture.
CONFORMING TO
io_getevents is Linux specific and should not be used in programs that
are intended to be portable.
VERSIONS
The asynchronous I/O system calls first appeared in Linux 2.5, August
2002.
SEE ALSO
io_setup(2), io_submit(2), io_getevents(2), io_cancel(2), io_de-
stroy(2).
NOTES
The asynchronous I/O system calls were written by Benjamin LaHaise.
AUTHOR
Kent Yoder.
Linux 2.4 2003-02-21 IO_GETEVENTS(2)