.\" -*- coding: UTF-8 -*- .\" Copyright (C) 2003 Free Software Foundation, Inc. .\" .\" SPDX-License-Identifier: GPL-1.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH io_getevents 2 "30 октября 2022 г." "Linux man\-pages 6.03" .SH ИМЯ io_getevents \- считывает асинхронные события ввода/вывода из очереди выполнения .SH LIBRARY Standard C library (\fIlibc\fP, \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP /* Definition of \fB*io_*\fP types */ \fB#include \fP /* Definition of \fBSYS_*\fP constants */ \fB#include \fP .PP \fBint syscall(SYS_io_getevents, aio_context_t \fP\fIctx_id\fP\fB,\fP \fB long \fP\fImin_nr\fP\fB, long \fP\fInr\fP\fB, struct io_event *\fP\fIevents\fP\fB,\fP \fB struct timespec *\fP\fItimeout\fP\fB);\fP .fi .PP \fINote\fP: glibc provides no wrapper for \fBio_getevents\fP(), necessitating the use of \fBsyscall\fP(2). .SH ОПИСАНИЕ \fINote\fP: this page describes the raw Linux system call interface. The wrapper function provided by \fIlibaio\fP uses a different type for the \fIctx_id\fP argument. See NOTES. .PP Системный вызов \fBio_getevents\fP() пытается считать, по меньшей мере, от \fImin_nr\fP до \fInr\fP событий из очереди выполнения контекста AIO, указанном в \fIctx_id\fP. .PP The \fItimeout\fP argument specifies the amount of time to wait for events, and is specified as a relative timeout in a \fBtimespec\fP(3) structure. .PP Указанное время округляется до точности системных часов и гарантируется, что он не будет просрочено/сработает раньше. .PP Указание в \fItimeout\fP значения NULL приводит к бесконечной блокировке — до получения не менее \fImin_nr\fP событий. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" При успешном выполнении \fBio_getevents\fP() возвращается количество прочитанных событий. Оно может быть 0 или меньше \fImin_nr\fP, если \fItimeout\fP просрочен. Также может возвращаться ненулевое значение меньше \fImin_nr\fP, если вызов был прерван обработчиком сигнала. .PP Значения при ошибках смотрите в разделе ЗАМЕЧАНИЯ. .SH ОШИБКИ .TP \fBEFAULT\fP Задан неправильный указатель в \fIevents\fP или \fItimeout\fP. .TP \fBEINTR\fP Прерван обработчиком сигнала; смотрите \fBsignal\fP(7). .TP \fBEINVAL\fP Неверное значение \fIctx_id\fP. Значение \fImin_nr\fP или \fInr\fP лежит за пределами диапазона. .TP \fBENOSYS\fP Вызов \fBio_getevents\fP() не реализован для данной архитектуры. .SH ВЕРСИИ Асинхронные системные вызовы ввода\-вывода впервые появились в Linux 2.5. .SH СТАНДАРТЫ Вызов \fBio_getevents\fP() есть только в Linux, и он не должен использоваться в переносимых программах. .SH ЗАМЕЧАНИЯ .\" http://git.fedorahosted.org/git/?p=libaio.git You probably want to use the \fBio_getevents\fP() wrapper function provided by \fIlibaio\fP. .PP .\" But glibc is confused, since uses 'io_context_t' to declare .\" the system call. Заметим, что в обёрточной функции \fIlibaio\fP используется другой тип (\fIio_context_t\fP) аргумента \fIctx_id\fP. Также заметим, что \fIlibaio\fP не следует соглашениям обычной библиотеки C для возврата ошибок: при ошибке она возвращает отрицательный номер ошибки (из списка в разделе ОШИБКИ). Если системный вызов вызывается с помощью \fBsyscall\fP(2), то возвращаемое значение следует обычным соглашениям для указания на ошибку: возвращается \-1 и в \fIerrno\fP записывается (положительное) значение возникшей ошибки. .SH ДЕФЕКТЫ Некорректное значение \fIctx_id\fP может привести к ошибке сегментирования, а не генерации ошибки \fBEINVAL\fP. .SH "СМ. ТАКЖЕ" \fBio_cancel\fP(2), \fBio_destroy\fP(2), \fBio_setup\fP(2), \fBio_submit\fP(2), \fBtimespec\fP(3), \fBaio\fP(7), \fBtime\fP(7) .\" .SH AUTHOR .\" Kent Yoder. .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Azamat Hackimov , Dmitriy S. Seregin , Yuri Kozlov и Иван Павлов . .PP Этот перевод является бесплатной документацией; прочитайте .UR https://www.gnu.org/licenses/gpl-3.0.html Стандартную общественную лицензию GNU версии 3 .UE или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. .PP Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .MT man-pages-ru-talks@lists.sourceforge.net .ME .