Provided by:
manpages-dev_2.77-1_all 
NAME
io_setup - create an asynchronous I/O context
SYNOPSIS
#include <libaio.h>
int io_setup(unsigned nr_events, aio_context_t *ctxp);
Link with -laio.
DESCRIPTION
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
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 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
io_setup() is Linux-specific and should not be used in programs that
are intended to be portable.
SEE ALSO
io_destroy(2), io_getevents(2), io_submit(2), io_cancel(2)
COLOPHON
This page is part of release 2.77 of the Linux man-pages project. A
description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.