#include <linux/time.h>
#include <libaio.h>
標籤 | 描述 |
---|---|
long io_getevents (aio_context_t ctx_id, long min_nr, long nr, struct io_event*events, struct timespec *timeout); |
io_getevents() attempts to read at least min_nr events and up to nr events from the completion queue of the AIO context specified by ctx_id. timeout specifies the amount of time to wait for events, where a NULL timeout waits until at least min_nr events have been seen. Note that timeout is relative and will be updated if not NULL and the operation blocks.
io_getevents() returns the number of events read: 0 if no events are available or <min_nr if the timeout has elapsed.
標籤 | 描述 |
---|---|
EINVAL |
ctx_id is invalid. min_nr is out of range or nr is out of range.
|
EFAULT |
Either events or timeout is an invalid yiibaier.
|
ENOSYS |
io_getevents() is not implemented on this architecture.
|
io_getevents() 是Linux特有的,並應在該旨在是可移植的程式不被使用。
The asynchronous I/O system calls first appeared in Linux 2.5, August 2002.
io_setup(2), io_submit(2), io_getevents(2), io_cancel(2), io_destroy(2).
The asynchronous I/O system calls were written by Benjamin LaHaise.