summaryrefslogtreecommitdiffstats
path: root/man-pages-posix-2013/man3p/aio_suspend.3p
diff options
context:
space:
mode:
Diffstat (limited to 'man-pages-posix-2013/man3p/aio_suspend.3p')
-rw-r--r--man-pages-posix-2013/man3p/aio_suspend.3p132
1 files changed, 132 insertions, 0 deletions
diff --git a/man-pages-posix-2013/man3p/aio_suspend.3p b/man-pages-posix-2013/man3p/aio_suspend.3p
new file mode 100644
index 0000000..fda1d0f
--- /dev/null
+++ b/man-pages-posix-2013/man3p/aio_suspend.3p
@@ -0,0 +1,132 @@
+'\" et
+.TH AIO_SUSPEND "3P" 2013 "IEEE/The Open Group" "POSIX Programmer's Manual"
+.SH PROLOG
+This manual page is part of the POSIX Programmer's Manual.
+The Linux implementation of this interface may differ (consult
+the corresponding Linux manual page for details of Linux behavior),
+or the interface may not be implemented on Linux.
+
+.SH NAME
+aio_suspend
+\(em wait for an asynchronous I/O request
+.SH SYNOPSIS
+.LP
+.nf
+#include <aio.h>
+.P
+int aio_suspend(const struct aiocb *const \fIlist\fP[], int \fInent\fP,
+ const struct timespec *\fItimeout\fP);
+.fi
+.SH DESCRIPTION
+The
+\fIaio_suspend\fR()
+function shall suspend the calling thread until at least one of the
+asynchronous I/O operations referenced by the
+.IR list
+argument has completed, until a signal interrupts the function, or, if
+.IR timeout
+is not NULL, until the time interval specified by
+.IR timeout
+has passed. If any of the
+.BR aiocb
+structures in the list correspond to completed asynchronous I/O
+operations (that is, the error status for the operation is not equal to
+.BR [EINPROGRESS] )
+at the time of the call, the function shall return without suspending
+the calling thread. The
+.IR list
+argument is an array of pointers to asynchronous I/O control blocks.
+The
+.IR nent
+argument indicates the number of elements in the array. Each
+.BR aiocb
+structure pointed to has been used in initiating an asynchronous
+I/O request via
+\fIaio_read\fR(),
+\fIaio_write\fR(),
+or
+\fIlio_listio\fR().
+This array may contain null pointers, which are ignored. If this array
+contains pointers that refer to
+.BR aiocb
+structures that have not been used in submitting asynchronous I/O, the
+effect is undefined.
+.P
+If the time interval indicated in the
+.BR timespec
+structure pointed to by
+.IR timeout
+passes before any of the I/O operations referenced by
+.IR list
+are completed, then
+\fIaio_suspend\fR()
+shall return with an error.
+If the Monotonic Clock option is supported, the clock that shall be
+used to measure this time interval shall be the CLOCK_MONOTONIC clock.
+.SH "RETURN VALUE"
+If the
+\fIaio_suspend\fR()
+function returns after one or more asynchronous I/O operations have
+completed, the function shall return zero. Otherwise, the function shall
+return a value of \(mi1 and set
+.IR errno
+to indicate the error.
+.P
+The application may determine which asynchronous I/O completed by
+scanning the associated error and return status using
+\fIaio_error\fR()
+and
+\fIaio_return\fR(),
+respectively.
+.SH ERRORS
+The
+\fIaio_suspend\fR()
+function shall fail if:
+.TP
+.BR EAGAIN
+No asynchronous I/O indicated in the list referenced by
+.IR list
+completed in the time interval indicated by
+.IR timeout .
+.TP
+.BR EINTR
+A signal interrupted the
+\fIaio_suspend\fR()
+function. Note that, since each asynchronous I/O operation may
+possibly provoke a signal when it completes, this error return may be
+caused by the completion of one (or more) of the very I/O operations
+being awaited.
+.LP
+.IR "The following sections are informative."
+.SH EXAMPLES
+None.
+.SH "APPLICATION USAGE"
+None.
+.SH RATIONALE
+None.
+.SH "FUTURE DIRECTIONS"
+None.
+.SH "SEE ALSO"
+.IR "\fIaio_read\fR\^(\|)",
+.IR "\fIaio_write\fR\^(\|)",
+.IR "\fIlio_listio\fR\^(\|)"
+.P
+The Base Definitions volume of POSIX.1\(hy2008,
+.IR "\fB<aio.h>\fP"
+.SH COPYRIGHT
+Portions of this text are reprinted and reproduced in electronic form
+from IEEE Std 1003.1, 2013 Edition, Standard for Information Technology
+-- Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 7, Copyright (C) 2013 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.
+(This is POSIX.1-2008 with the 2013 Technical Corrigendum 1 applied.) In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard
+is the referee document. The original Standard can be obtained online at
+http://www.unix.org/online.html .
+
+Any typographical or formatting errors that appear
+in this page are most likely
+to have been introduced during the conversion of the source files to
+man page format. To report such errors, see
+https://www.kernel.org/doc/man-pages/reporting_bugs.html .