NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | CONFORMING TO | NOTES | SEE ALSO | COLOPHON
AIO_SUSPEND(3) Linux Programmer's Manual 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);
Link with -lrt.
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; see signal(7). (Possibly the completion
signal of one of the operations we were waiting for.)
POSIX.1-2001.
One can achieve polling by using a non-NULL timeout that specifies a zero time
interval.
aio_cancel(3), aio_error(3), aio_fsync(3), aio_read(3), aio_return(3),
aio_write(3), time(7)
This page is part of release 3.23 of the Linux man-pages project. A
description of the project, and information about reporting bugs, can be found
at http://www.kernel.org/doc/man-pages/.
2003-11-14 AIO_SUSPEND(3)