.\" -*- 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 "2 мая 2024 г." "Справочные страницы Linux 6.9.1" .SH ИМЯ io_getevents \- считывает асинхронные события ввода/вывода из очереди выполнения .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP, \fI\-lc\fP) .P Alternatively, Asynchronous I/O library (\fIlibaio\fP, \fI\-laio\fP); see VERSIONS. .SH СИНТАКСИС .nf \fB#include \fP /* Definition of \fB*io_*\fP types */ \fB#include \fP /* Definition of \fBSYS_*\fP constants */ \fB#include \fP .P \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 .P \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 VERSIONS. .P Системный вызов \fBio_getevents\fP() пытается считать, по меньшей мере, от \fImin_nr\fP до \fInr\fP событий из очереди выполнения контекста AIO, указанном в \fIctx_id\fP. .P 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. .P Указанное время округляется до точности системных часов и гарантируется, что он не будет просрочено/сработает раньше. .P Указание в \fItimeout\fP значения NULL приводит к бесконечной блокировке — до получения не менее \fImin_nr\fP событий. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" При успешном выполнении \fBio_getevents\fP() возвращается количество прочитанных событий. Оно может быть 0 или меньше \fImin_nr\fP, если \fItimeout\fP просрочен. Также может возвращаться ненулевое значение меньше \fImin_nr\fP, если вызов был прерван обработчиком сигнала. .P For the failure return, see VERSIONS. .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 ВЕРСИИ .\" http://git.fedorahosted.org/git/?p=libaio.git You probably want to use the \fBio_getevents\fP() wrapper function provided by \fIlibaio\fP. .P .\" 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 СТАНДАРТЫ Linux. .SH ИСТОРИЯ Linux 2.5. .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 Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT списка рассылки русских переводчиков .ME .