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)