io_setup() System Call in Linux
NAME
io_setup - Create an asynchronous I/O contextSYNOPSIS
#include <libaio.h>
| Tag | Description |
|---|---|
|
int io_setup (int maxevents, io_context_t *ctxp);
| |
DESCRIPTION
io_setup() creates an asynchronous I/O context capable of receiving at least maxevents. 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; otherwise, one of the errors listed in the "Errors" section is returned.
ERRORS
| Tag | Description |
|---|---|
| EINVAL |
ctxp is not initialized, or the specified maxevents
exceeds internal limits. maxevents should be greater than 0.
|
| EFAULT |
An invalid pointer is passed for ctxp.
|
| ENOMEM |
Insufficient kernel resources are available.
|
| EAGAIN |
The specified maxevents exceeds the users limit of available events.
|
| ENOSYS |
io_setup() is not implemented on this architecture.
|
CONFORMING TO
io_setup() 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_destroy(2), io_getevents(2), io_submit(2), io_cancel(2).
NOTES
The asynchronous I/O system calls were written by Benjamin LaHaise.
Advertisements