Originální popis anglicky:
aio_suspend - wait for asynchronous I/O operation or timeout
Návod, kniha: Linux Programmer's Manual
#include <aio.h>
int aio_suspend(const struct aiocb * const cblist[],
int n, const struct timespec *timeout);
The
aio_suspend function suspends the calling process until at least one
of the asynchronous I/O requests in the list
cblist of length
n
have completed, a signal is delivered, or
timeout is not NULL and the
time interval it indicates has passed.
Each item in the list must either be NULL (and then is ignored), or a pointer to
a control block on which I/O was initiated using
aio_read(3),
aio_write(3), or
lio_listio(3).
If CLOCK_MONOTONIC is supported, this clock is used to measure the timeout
interval.
If this function returns after completion of one of the indicated requests, it
returns 0. Otherwise it returns -1 and sets
errno appropriately.
- EAGAIN
- The call was ended by timeout, before any of the indicated
operations had completed.
- EINTR
- The call was ended by signal. (Possibly the completion
signal of one of the operations we were waiting for.)
One can achieve polling by using a non-NULL
timeout that specifies a zero
time interval.
POSIX 1003.1-2003
aio_cancel(3),
aio_error(3),
aio_fsync(3),
aio_read(3),
aio_return(3),
aio_write(3)