Provided by: manpages-ru-dev_4.21.0-2_all bug

ИМЯ

       io_cancel - отменяет невыполненную асинхронную операцию ввода-вывода

LIBRARY

       Standard C library (libc, -lc)

       Alternatively, Asynchronous I/O library (libaio, -laio); see NOTES.

СИНТАКСИС

       #include <linux/aio_abi.h>    /* Definition of needed types */
       #include <sys/syscall.h>      /* Definition of SYS_* constants */
       #include <unistd.h>

       int syscall(SYS_io_cancel, aio_context_t ctx_id, struct iocb *iocb,
                   struct io_event *result);

ОПИСАНИЕ

       Note:  this  page describes the raw Linux system call interface.  The wrapper function provided by libaio
       uses a different type for the ctx_id argument.  See NOTES.

       Системный вызов io_cancel() пытается  отменить  асинхронную  операцию  ввода-вывода,  ранее  отправленную
       системным  вызовом io_submit(2). В В параметре iocb указывается отменяемая операция, а в параметре ctx_id
       задаётся идентификатор контекста AIO отправленной операции. Если операция успешно  отменена,  то  событие
       будет скопировано в память, куда указывает result, без помещения в очередь выполнения.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       В случае успешного завершения io_cancel() возвращает 0. В случае ошибки смотрите ЗАМЕЧАНИЯ.

ОШИБКИ

       EAGAIN Указанный iocb не был отменен.

       EFAULT Одна из структур данных указывает на некорректные данные.

       EINVAL Некорректен контекст AIO, указанный ctx_id.

       ENOSYS Вызов io_cancel() не реализован для этой архитектуры.

ВЕРСИИ

       Асинхронные системные вызовы ввода-вывода впервые появились в Linux 2.5.

СТАНДАРТЫ

       Вызов io_cancel() есть только в Linux, и он не должен использоваться в переносимых программах.

ЗАМЕЧАНИЯ

       You probably want to use the io_cancel()  wrapper function provided by libaio.

       Заметим,  что  в обёрточной функции libaio используется другой тип (io_context_t) аргумента ctx_id. Также
       заметим, что libaio не следует соглашениям обычной библиотеки C  для  возврата  ошибок:  при  ошибке  она
       возвращает  отрицательный  номер  ошибки  (из списка в разделе ОШИБКИ). Если системный вызов вызывается с
       помощью syscall(2), то  возвращаемое  значение  следует  обычным  соглашениям  для  указания  на  ошибку:
       возвращается -1 и в errno записывается (положительное) значение возникшей ошибки.

СМ. ТАКЖЕ

       io_destroy(2), io_getevents(2), io_setup(2), io_submit(2), aio(7)

ПЕРЕВОД

       Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy
       S. Seregin <dseregin@59.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3
       или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо
       на man-pages-ru-talks@lists.sourceforge.net.

Linux man-pages 6.03                           30 октября 2022 г.                                   io_cancel(2)