GNU/Linux |
CentOS 5.5 |
|
![]() |
aio_suspend(3) |
![]() |
aio_suspend − wait for asynchronous I/O operation or timeout
#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.1-2001
aio_cancel(3), aio_error(3), aio_fsync(3), aio_read(3), aio_return(3), aio_write(3)
![]() |
aio_suspend(3) | ![]() |