diff options
Diffstat (limited to '')
-rw-r--r-- | upstream/mageia-cauldron/man3p/aio_suspend.3p | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/upstream/mageia-cauldron/man3p/aio_suspend.3p b/upstream/mageia-cauldron/man3p/aio_suspend.3p new file mode 100644 index 00000000..60e26b75 --- /dev/null +++ b/upstream/mageia-cauldron/man3p/aio_suspend.3p @@ -0,0 +1,134 @@ +'\" et +.TH AIO_SUSPEND "3P" 2017 "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 \-1 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\(hy2017, +.IR "\fB<aio.h>\fP" +.\" +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1-2017, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 7, 2018 Edition, +Copyright (C) 2018 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. +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.opengroup.org/unix/online.html . +.PP +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 . |