up | Inhaltsverzeichniss | Kommentar

Manual page for AIOWAIT(3)

aiowait - wait for completion of asynchronous I/O operation

SYNOPSIS

#include <sys/asynch.h>
#include <sys/time.h>

aio_result_t *aiowait(timeout)
struct timeval *timeout;

DESCRIPTION

aiowait() suspends the calling process until one of its outstanding asynchronous I/O operations completes. This provides a synchronous method of notification.

If timeout is a non-zero pointer, it specifies a maximum interval to wait for the completion of an asynchronous I/O operation. If timeout is a zero pointer, then aiowait() blocks indefinitely. To effect a poll, the timeout parameter should be non-zero, pointing to a zero-valued timeval structure. The timeval structure is defined in <sys/time.h> as:

struct timeval {
	long  tv_sec;			/* seconds		*/
	long  tv_usec;			/* and microseconds	*/
};

NOTES

aiowait() is the only way to dequeue an asynchronous notification. It may be used either inside a SIGIO signal handler or in the main program. Note: one SIGIO signal may represent several queued events.

RETURN VALUES

On success, aiowait() returns a pointer to the result structure used when the completed asynchronous I/O operation was requested. On failure, it returns -1 and sets errno to indicate the error. aiowait() returns 0 if the time limit expires.

ERRORS

EFAULT
timeout points to an address outside the address space of the requesting process.
EINTR
A signal was delivered before an asynchronous I/O operation completed.

The time limit expired.

EINVAL
There are no outstanding asynchronous I/O requests.

SEE ALSO

aiocancel.3 aioread.3


index | Inhaltsverzeichniss | Kommentar

Created by unroff & hp-tools. © somebody (See intro for details). All Rights Reserved. Last modified 11/5/97