aio_cancel —
cancel an outstanding asynchronous I/O operation
(REALTIME)
Standard C Library (libc, -lc)
#include
<aio.h>
int
aio_cancel(int
fildes, struct aiocb
*iocb);
The
aio_cancel()
system call cancels the outstanding asynchronous I/O request for the file
descriptor specified in fildes. If
iocb is specified, only that specific asynchronous I/O
request is cancelled.
Normal asynchronous notification occurs for cancelled requests.
Requests complete with an error result of
ECANCELED.
The
aio_cancel()
system call does not cancel asynchronous I/O requests for raw disk devices.
The aio_cancel() system call will always return
AIO_NOTCANCELED for file descriptors associated with
raw disk devices.
The aio_cancel() system call returns -1 to
indicate an error, or one of the following:
- [
AIO_CANCELED]
- All outstanding requests meeting the criteria specified were
cancelled.
- [
AIO_NOTCANCELED]
- Some requests were not cancelled, status for the requests should be
checked with
aio_error(2).
- [
AIO_ALLDONE]
- All of the requests meeting the criteria have finished.
An error return from aio_cancel()
indicates:
- [
EBADF]
- The fildes argument is an invalid file
descriptor.
The aio_cancel() system call is expected
to conform to the IEEE Std 1003.1
(“POSIX.1”) standard.
The aio_cancel() system call first
appeared in FreeBSD 3.0. The first functional
implementation of aio_cancel() appeared in
FreeBSD 4.0.