:man| Alphabetical   Categories   About us 
"IO_SETUP" (2) | System calls | Unix Manual Pages | :man


io_setup - Create an asynchronous I/O context




#include <linux/aio.h>

long io_setup (unsigned nr_events, aio_context_t *ctxp);


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.


io_setup returns 0 on success; otherwise, one of the errors listed in the "Errors" section is returned.


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.


io_setup is Linux specific and should not be used in programs that are intended to be portable.


The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.


io_destroy(2), io_getevents(2), io_submit(2), io_cancel(2).



Created by Blin Media, 2008-2013