aio_return(2)

aio_return2

Retrieve return status of asynchronous i/o operation (realtime)

Usage

#include <aio.h>

ssize_t

aio_return(struct aiocb *aiocbp);

Library

Standard C Library (libc, -lc)

Overview

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.

Releases

128 releases since Mac OS X 10.4; the text changed 2 times.

  1. 10.4–10.4.11
  2. 10.5–10.5.8
  3. 10.6–26.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 ⟨[email protected]⟩.

From xnu 12377.121.6 in macOS 26.5. Parsed by carta from the page's mdoc source.