Прервать асинхронную операцию ввода/вывода
#include <aio.h>int aio_cancel( int fd,struct aiocb *aiocbptr );
NULLif you want to cancel all requests against the file descriptor.
The aio_cancel() function attempts to cancel one or more asynchronous I/O requests currently outstanding against a file descriptor.
Normal asynchronous notification occurs for asynchronous I/O operations that are successfully canceled. If there are requests that can't be canceled, then the normal asynchronous completion process takes place for those requests when they're completed.
The error status that's associated with requested operations that are successfully canceled is set to
ECANCELED, and the return status is
-1. The aio_cancel() function doesn't modify the struct aiocb structures for requested operations that aren't successfully canceled.
If aiocbptr isn't
NULL, @ aio_cancel() ignores the fildes argument and attempts to cancel the I/O operation specified by the struct aiocb control block. The operation isn't cancelled if it's already in progress.
| A return value of |
POSIX 1003.1 AIO
The first time you call an aio_*() function, a thread pool is created, making your process multithreaded if it isn't already. The thread pool isn't destroyed until your process ends.
aio_error(), aio_fsync(), aio_read(), aio_return(), aio_suspend(), aio_write(), struct aiocb
Предыдущий раздел: Описание API системной библиотеки