AREADV(2-SVR3) RISC/os Reference Manual AREADV(2-SVR3)
NAME
areadv - asynchronous scatter/gather read
SYNOPSIS
#include <sys/aio.h>
aiohandlet areadv(int fildes, struct aiorb *aiorbp);
DESCRIPTION
areadv allows the calling process to read data into aiorbp-
>aiovcnt buffers specified by the members of the aiorbp-
>aio_iov array. The function call returns when the read
request has been initiated or queued to the file or device
(even when the data cannot be delivered immediately). If an
error condition is encountered during queuing, the function
call returns without having initiated or queued the request.
RETURNS
areadv returns a handle to the calling process if the func-
tion is successful, otherwise, the function returns the
value -1, and sets errno to indicate the error. The handle
returned is used for subsequent operations.
ERRORS
If any of the following conditions occur, areadv returns -1
and sets errno to the corresponding value:
[EAGAIN] The requested asynchronous I/O operation was
not queued due to system resource limita-
tions.
[EBADF] fildes argument is not a valid file descrip-
tor open for reading.
[EINVAL] The aio_whence member is not a proper value,
or the resulting file pointer is invalid.
In the case that areadv successfully queues the I/O opera-
tions, but the operation is subsequently canceled or
encounters an error, the aio_errno member of the aiocb
structure contains one of the values normally returned by
the read(2) system call. In addition, the following error
code may be encountered:
[ECANCEL] The requested I/O was canceled before the I/O
completed due to an explicit acancel()
request.
SEE ALSO
acancel(2), aread(2), astatus(2), await(2), awrite(2), awri-
tev(2), listio(2), aio(5).
Printed 11/19/92 Page 1