AIO_RETURN(3C) Standard C Library Functions AIO_RETURN(3C)
NAME
aio_return - retrieve return status of an asynchronous I/O operation
SYNOPSIS
#include <aio.h>
ssize_t aio_return(
struct aiocb *aiocbp);
DESCRIPTION
The
aio_return() function returns the return status associated with
the
aiocb structure referenced by the
aiocbp argument. The return
status for an asynchronous I/O operation is the value that would be
returned by the corresponding
read(2),
write(2), or
fsync(3C) function call. If the error status for the operation is equal to
EINPROGRESS, then the return status for the operation is undefined.
The
aio_return() function may be called exactly once to retrieve the
return status of a given asynchronous operation; thereafter, if the
same
aiocb structure is used in a call to
aio_return() or
aio_error(3C), an error may be returned. When the
aiocb structure
referred to by
aiocbp is used to submit another asynchronous
operation, then
aio_return() may be successfully used to retrieve the
return status of that operation.
RETURN VALUES
If the asynchronous I/O operation has completed, then the return
status, as described for
read(2),
write(2), and
fsync(3C), is
returned. If the asynchronous I/O operation has not yet completed,
the results of
aio_return() are undefined.
ERRORS
The
aio_return() function will fail if:
EINVAL The
aiocbp argument does not refer to an asynchronous
operation whose return status has not yet been retrieved.
ENOSYS The
aio_return() function is not supported by the system.
USAGE
The
aio_return() function has a transitional interface for 64-bit
file offsets. See
lf64(7).
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-------------------+
|Interface Stability | Committed |
+--------------------+-------------------+
|MT-Level | Async-Signal-Safe |
+--------------------+-------------------+
|Standard | See
standards(7). |
+--------------------+-------------------+
SEE ALSO
close(2),
exec(2),
exit(2),
fork(2),
lseek(2),
read(2),
write(2),
aio_cancel(3C),
aio_fsync(3C),
aio_read(3C),
fsync(3C),
lio_listio(3C),
aio.h(3HEAD),
signal.h(3HEAD),
attributes(7),
lf64(7),
standards(7)NOTES
Solaris 2.6 was the first release to support the Asynchronous Input
and Output option. Prior to this release, this function always
returned
-1 and set
errno to
ENOSYS.
February 5, 2008 AIO_RETURN(3C)