io_setup (2)

IO_SETUP(2) Linux Programmer's Manual IO_SETUP(2) 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 han- dle. 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) Linux 2003-02-21 IO_SETUP(2)