cc [ flag ... ] file ... -laio [ library ... ] #include <sys/asynch.h>
int aiocancel(aio_result_t *resultp);
aiocancel() cancels the asynchronous operation associated with the result buffer pointed to by resultp. It may not be possible to immediately cancel an operation which is in progress and in this case, aiocancel() will not wait to cancel it.
Upon successful completion, aiocancel() returns 0 and the requested operation is cancelled. The application will not receive the SIGIO completion signal for an asynchronous operation that is successfully cancelled.
Upon successful completion, aiocancel() returns 0. Upon failure, aiocancel() returns -1 and sets errno to indicate the error.
aiocancel() will fail if any of the following are true:
EACCES The parameter resultp does not correspond to any outstanding asynchronous operation, although there is at least one currently outstanding.
EFAULT resultp points to an address outside the address space of the requesting process. See NOTES.
EINVAL There are not any outstanding requests to cancel.
See attributes (5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
aioread(3AIO), aiowait(3AIO), attributes(5)
Passing an illegal address as resultp will result in setting errno to EFAULT only if it is detected by the application process.