Visible to Intel only — GUID: GUID-25452D47-21CF-4822-B032-DE4FA63E7B71
Visible to Intel only — GUID: GUID-25452D47-21CF-4822-B032-DE4FA63E7B71
aio_suspend
Suspends the calling process until one of the asynchronous I/O operations completes.
Syntax
int aio_suspend(const struct aiocb * const cblist[], int n, const struct timespec *timeout); |
Arguments
cblist[] |
Pointer to a control block on which I/O is initiated |
n |
Length of cblist list |
*timeout |
Time interval to suspend the calling process |
Description
The aio_suspend() function is like a wait operation. It suspends the calling process until,
- At least one of the asynchronous I/O requests in the list cblist of length n has completed
- A signal is delivered
- The time interval indicated in timeout is not NULL and has passed.
Each item in the cblist list must either be NULL (when it is ignored), or a pointer to a control block on which I/O was initiated using aio_read(), aio_write(), or lio_listio() functions.
Returns
0: On success
-1: On error
To get the correct error code, use errno.