NAME
io_setup - create an asynchronous I/O context
SYNOPSIS
#include <libaio.h>
I int io_setup(unsigned nr_events , aio_context_t * ctxp );
Link with -laio.
DESCRIPTION
R io_setup ()
creates an asynchronous I/O context capable of receiving
at least nr_events.
ctxp must not point to an AIO context that already exists, and must
be initialized to 0 prior to the call.
On successful creation of the AIO context, *ctxp is filled in
with the resulting handle.
RETURN VALUE
R io_setup ()
returns 0 on success;
on failure, it returns one of the errors listed under ERRORS.
ERRORS
EINVAL
ctxp is not initialized, or the specified nr_events
exceeds internal limits. nr_events should be greater than 0.
EFAULT
An invalid pointer is passed for ctxp.
ENOMEM
Insufficient kernel resources are available.
EAGAIN
The specified nr_events exceeds the user's limit of available events.
ENOSYS
R io_setup ()
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_setup ()
is Linux specific and should not be used in programs
that are intended to be portable.
SEE ALSO