aio_cancel — cancel an outstanding asynchronous I/O request
#include <aio.h>
int
aio_cancel( |
int | fd, |
| struct aiocb * | aiocbp); |
The aio_cancel() function
attempts to cancel outstanding asynchronous I/O requests for
the file descriptor fd. If aiocbp is NULL, all such
requests are canceled. Otherwise, only the request described
by the control block pointed to by aiocbp is canceled.
Normal asynchronous notification occurs for canceled requests. The request return status is set to −1, and the request error status is set to ECANCELED. The control block of requests that cannot be canceled is not changed.
If aiocbp is not
NULL, and fd differs
from the file descriptor with which the asynchronous
operation was initiated, unspecified results occur.
Which operations are cancellable is implementation-defined.
This function returns AIO_CANCELED if all requests were
successfully canceled. It returns AIO_NOTCANCELED when at least one of the
requests specified was not canceled because it was in
progress. In this case one may check the status of individual
requests using aio_error(3). This function
returns AIO_ALLDONE when all
requests had been completed already before this call. When
some error occurs, −1 is returned, and errno is set appropriately.
aio_error(3), aio_fsync(3), aio_read(3), aio_return(3), aio_suspend(3), aio_write(3)
|
|