Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

aio_return(2) [osx man page]

AIO_RETURN(2)						      BSD System Calls Manual						     AIO_RETURN(2)

NAME
aio_return -- retrieve return status of asynchronous I/O operation (REALTIME) LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <aio.h> ssize_t aio_return(struct aiocb *aiocbp); DESCRIPTION
The aio_return() system call returns the final status of the asynchronous I/O request associated with the structure pointed to by aiocbp. The aio_return() system call should only be called once, to obtain the final status of an asynchronous I/O operation (once aio_error(2) returns something other than EINPROGRESS) and to clean up system resources. However, if aio_return() is not called at all, aio(4) will leak resources. RETURN VALUES
If the asynchronous I/O request has completed, the status is returned as described in read(2), write(2), or fsync(2). On failure, aio_return() returns -1 and sets errno to indicate the error condition. ERRORS
The aio_return() system call will fail if: [EINVAL] The aiocbp argument does not reference an outstanding asynchronous I/O request. [EINPROGRESS] The asynchronous I/O request is still in progress. LEGACY SYNOPSIS
#include <aio.h> int aio_return(struct aiocb *aiocbp); The type of the return value has changed. SEE ALSO
aio_cancel(2), aio_error(2), aio_suspend(2), aio_write(2), fsync(2), read(2), write(2), aio(4), compat(5) STANDARDS
The aio_return() system call is expected to conform to the IEEE Std 1003.1 (``POSIX.1'') standard. HISTORY
The aio_return() system call first appeared in FreeBSD 3.0. AUTHORS
This manual page was written by Wes Peters <wes@softweyr.com>. BSD
September 26, 2008 BSD

Check Out this Related Man Page

AIO_RETURN(3)						     Linux Programmer's Manual						     AIO_RETURN(3)

NAME
aio_return - get return status of asynchronous I/O operation SYNOPSIS
#include <aio.h> ssize_t aio_return(struct aiocb *aiocbp); Link with -lrt. DESCRIPTION
The aio_return() function returns the final return status for the asynchronous I/O request with control block pointed to by aiocbp. (See aio(7) for a description of the aiocb structure.) This function should be called only once for any given request, after aio_error(3) returns something other than EINPROGRESS. RETURN VALUE
If the asynchronous I/O operation has completed, this function returns the value that would have been returned in case of a synchronous read(2), write(2), fsync(2) or fdatasync(2), call. On error, -1 is returned, and errno is set appropriately. If the asynchronous I/O operation has not yet completed, the return value and effect of aio_return() are undefined. ERRORS
EINVAL aiocbp does not point at a control block for an asynchronous I/O request of which the return status has not been retrieved yet. ENOSYS aio_return() is not implemented. VERSIONS
The aio_return() function is available since glibc 2.1. ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7). +-------------+---------------+---------+ |Interface | Attribute | Value | +-------------+---------------+---------+ |aio_return() | Thread safety | MT-Safe | +-------------+---------------+---------+ CONFORMING TO
POSIX.1-2001, POSIX.1-2008. EXAMPLE
See aio(7). SEE ALSO
aio_cancel(3), aio_error(3), aio_fsync(3), aio_read(3), aio_suspend(3), aio_write(3), lio_listio(3), aio(7) COLOPHON
This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/. 2017-09-15 AIO_RETURN(3)
Man Page