AIO_CANCEL(3)

NAME
aio_cancel - cancel an outstanding asynchronous I/O operation (REALTIME)

LIBRARY
librt

SYNOPSIS
#include <aio.h>
int
aio_cancel(int fildes, struct aiocb * iocb);

DESCRIPTION
The aio_cancel() function 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.

RESTRICTIONS
The aio_cancel() function does not cancel asynchronous I/O requests for raw disk devices. The aio_cancel() function will always return AIO_NOTCANCELED for file descriptors associated with raw disk devices.

RETURN VALUES
The aio_cancel() function 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(3).

[AIO_ALLDONE]
    All of the requests meeting the criteria have finished.

ERRORS
An error return from aio_cancel() indicates:

[EBADF]
    fildes is an invalid file descriptor.

SEE ALSO
aio_error(3), aio_read(3), aio_return(3), aio_suspend(3), aio_write(3)

STANDARDS
The aio_cancel() function is expected to conform to the p1003.2 standard.

HISTORY
The aio_cancel() function first appeared in FreeBSD 3.0. The first functional implementation of aio_cancel() appeared in FreeBSD 4.0.

AUTHORS
-nosplit This manual page was originally written by Wes Peters <wes@softweyr.com>. Christopher M Sedore <cmsedore@maxwell.syr.edu> updated it when aio_cancel() was implemented for FreeBSD 4.0.