aio_error()

Получить статус ошибки асинхронной операции ввода/вывода

Прототип:

#include <aio.h>
int aio_error( const struct aiocb *aiocbptr );

Аргументы:

aiocbptr
Указатель на управляющий блок асинхронного ввода/вывода типа struct aiocb, для которого нужно получить статус ошибки.

Библиотека:

libc

Описание:

Функция aio_error() возвращает статус ошибки, связанной со структурой the struct aiocb, на которую указывает аргумент aiocbptr. Статус ошибки для асинхронной операции ввода/вывода равен значению errno, которое устанавливается соответствующей операцией read(), write() или fsync(). Если операция все еще не завершена, статус ошибки устанавливается в EINPROGRESS.

Возвращаемое значение:

Коды ошибок:

EINVAL
Аргумент aiocbptr не ссылается на асинхронную операцию, чей статус возврата все еще не получен.

Классификация:

POSIX 1003.1 Asynchronous Input/Output

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Предостережения:

При первом вызове функций aio_*() создается пул потоков, что делает процесс многопоточным, если он не был таковым. Пул потоков не уничтожится до тех пор, пока процесс не завершится.

Тематические ссылки:

aio_cancel(), aio_fsync(), aio_read(), aio_return(), aio_suspend(), aio_write(), struct aiocb




Предыдущий раздел: Описание API системной библиотеки