aio_cancel - Cancels one or more asynchronous I/O requests
pending against the specified file descriptor (P1003.1b)
int aio_cancel ( int fildes, struct aiocb *aiocbp);
Asynchronous I/O Library (libaio, libaio_raw)
The file descriptor against which outstanding asynchronous
I/O operations are canceled. A pointer to the address of
the aiocb structure for a particular request to be canceled.
If the aiocbp argument is NULL, all queued outstanding
asynchronous I/O requests against the file
descriptor are canceled.
The aio_cancel function cancels asynchronous I/O requests.
Normal signal delivery occurs for asynchronous I/O operations
that are successfully canceled. If a request cannot
be canceled, then the normal asynchronous completion process
takes place for those requests when they are completed.
On a successful call to the aio_cancel function, the
requested operation is canceled and AIO_CANCELED is
returned. If at least one of the requested operations is
not canceled because it is in progress, AIO_NOTCANCELED is
returned. If all the operations completed prior to the
cancel request, AIO_ALLDONE is returned.
On an unsuccessful call, a value of -1 is returned and
errno is set to indicate that an error occurred. Note that
the value of -1 is returned only if the call itself
The aio_cancel function fails under the following conditions:
The fildes argument is not a valid file descriptor.
Functions: aio_group_completion_np(3), aio_read(3),
aio_results_np(3), aio_write(3), aio_suspend(3)
Guide to Realtime Programming
[ Back ]