FreeBSD Manual Pages
AIO_WAITCOMPLETE(2) System Calls Manual AIO_WAITCOMPLETE(2) NAME aio_waitcomplete -- wait for the next completion of an aio request LIBRARY Standard C Library (libc, -lc) SYNOPSIS #include <aio.h> ssize_t aio_waitcomplete(struct aiocb **iocbp, struct timespec *timeout); DESCRIPTION The aio_waitcomplete() system call waits for completion of an asynchro- nous I/O request. Upon completion, aio_waitcomplete() returns the re- sult of the function and sets iocbp to point to the structure associ- ated with the original request. If an asynchronous I/O request is com- pleted before aio_waitcomplete() is called, it returns immediately with the completed request. If timeout is a non-NULL pointer, it specifies a maximum interval to wait for a asynchronous I/O request to complete. If timeout is a NULL pointer, aio_waitcomplete() waits indefinitely. To effect a poll, the timeout argument should be non-NULL, pointing to a zero-valued timeval structure. The aio_waitcomplete() system call also serves the function of aio_return(), thus aio_return() should not be called for the control block returned in iocbp. RETURN VALUES If an asynchronous I/O request has completed, iocbp is set to point to the control block passed with the original request, and the status is returned as described in read(2), write(2), or fsync(2). On failure, aio_waitcomplete() returns -1, sets iocbp to NULL and sets errno to in- dicate the error condition. ERRORS The aio_waitcomplete() system call fails if: [EINVAL] The specified time limit is invalid. [EAGAIN] The process has not yet called aio_read() or aio_write(). [EINTR] A signal was delivered before the timeout expired and before any asynchronous I/O requests completed. [EWOULDBLOCK] [EINPROGRESS] The specified time limit expired before any asyn- chronous I/O requests completed. SEE ALSO aio_cancel(2), aio_error(2), aio_read(2), aio_return(2), aio_suspend(2), aio_write(2), fsync(2), read(2), write(2), aio(4) STANDARDS The aio_waitcomplete() system call is a FreeBSD-specific extension. HISTORY The aio_waitcomplete() system call first appeared in FreeBSD 4.0. AUTHORS The aio_waitcomplete() system call and this manual page were written by Christopher M Sedore <cmsedore@maxwell.syr.edu>. FreeBSD 13.2 March 21, 2016 AIO_WAITCOMPLETE(2)
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | STANDARDS | HISTORY | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=aio_waitcomplete&sektion=2&manpath=FreeBSD+14.2-RELEASE+and+Ports>