io_getevents

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
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)