aio_suspend

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
AIO_SUSPEND(3)		  Linux Programmer’s Manual	       AIO_SUSPEND(3)



NAME
       aio_suspend - wait for asynchronous I/O operation or timeout

SYNOPSIS
       #include <aio.h>

       int aio_suspend(const struct aiocb * const cblist[],
		       int n, const struct timespec *timeout);


DESCRIPTION
       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.

RETURN VALUE
       If  this	 function  returns  after  completion of one of the indicated
       requests, it returns 0. Otherwise it returns -1 and sets errno  appro-
       priately.

ERRORS
       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.)

NOTE
       One  can	 achieve polling by using a non-NULL timeout that specifies a
       zero time interval.

CONFORMING TO
       POSIX 1003.1-2003

SEE ALSO
       aio_cancel(3), aio_error(3), aio_fsync(3), aio_read(3), aio_return(3),
       aio_write(3)



				  2003-11-14		       AIO_SUSPEND(3)