aio_suspend(2) suspend until asynchronous I/O operations or timeout complete (REALTIME)

LIBRARY

Lb libc

SYNOPSIS

In aio.h Ft int Fn aio_suspend const struct aiocb *const iocbs[] int niocb const struct timespec *timeout

DESCRIPTION

The Fn aio_suspend system call suspends the calling process until at least one of the specified asynchronous I/O requests have completed, a signal is delivered, or the Fa timeout has passed.

The Fa iocbs argument is an array of Fa niocb pointers to asynchronous I/O requests. Array members containing null pointers will be silently ignored.

If Fa timeout is not a null pointer, it specifies a maximum interval to suspend. If Fa timeout is a null pointer, the suspend blocks indefinitely. To effect a poll, the Fa timeout should point to a zero-value timespec structure.

RETURN VALUES

If one or more of the specified asynchronous I/O requests have completed, Fn aio_suspend returns 0. Otherwise it returns -1 and sets errno to indicate the error, as enumerated below.

ERRORS

The Fn aio_suspend system call will fail if:

Bq Er EAGAIN
the Fa timeout expired before any I/O requests completed.
Bq Er EINVAL
The Fa iocbs argument contains more than AIO_LISTIO_MAX asynchronous I/O requests, or at least one of the requests is not valid.
Bq Er EINTR
the suspend was interrupted by a signal.

STANDARDS

The Fn aio_suspend system call is expected to conform to the St -p1003.1 standard.

HISTORY

The Fn aio_suspend system call first appeared in Fx 3.0 .

AUTHORS

This manual page was written by An Wes Peters Aq [email protected] .