.\" -*- 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_setup 2 "5 февраля 2023 г." "Linux man\-pages 6.03" .SH ИМЯ io_setup \- создаёт асинхронный контекст ввода\-вывода .SH LIBRARY Standard C library (\fIlibc\fP, \fI\-lc\fP) .PP Alternatively, Asynchronous I/O library (\fIlibaio\fP, \fI\-laio\fP); see NOTES. .SH СИНТАКСИС .nf \fB#include \fP /* определяет необходимые типы */ .PP \fBlong io_setup(unsigned int \fP\fInr_events\fP\fB, aio_context_t *\fP\fIctx_idp\fP\fB);\fP .fi .PP \fIЗамечание\fP: В glibc нет обёрточной функции для данного системного вызова; смотрите ЗАМЕЧАНИЯ. .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_idp\fP argument. See NOTES. .PP Системный вызов \fBio_setup\fP() создает асинхронный контекст ввода\-вывода, способный параллельно обработать \fInr_events\fP событий. Параметр \fIctx_idp\fP не должен указывать на уже существующей контекст AIO и должно быть инициализировано 0 перед вызовом. При успешном создании контекста AIO, \fI*ctx_idp\fP заполняется полученным результатом обработки. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" В случае успешного завершения \fBio_setup\fP() возвращает 0. В случае ошибки смотрите ЗАМЕЧАНИЯ. .SH ОШИБКИ .TP \fBEAGAIN\fP The specified \fInr_events\fP exceeds the limit of available events, as defined in \fI/proc/sys/fs/aio\-max\-nr\fP (see \fBproc\fP(5)). .TP \fBEFAULT\fP В \fIctx_idp\fP передан некорректный указатель. .TP \fBEINVAL\fP Параметр \fIctx_idp\fP не инициализирован, или указанное в \fInr_events\fP количество превышает внутренние ограничения. Значение \fInr_events\fP должно быть больше 0. .TP \fBENOMEM\fP Недостаточно ресурсов ядра. .TP \fBENOSYS\fP \fBio_setup\fP() не реализован для этой архитектуры. .SH ВЕРСИИ Асинхронные системные вызовы ввода\-вывода впервые появились в Linux 2.5. .SH СТАНДАРТЫ Вызов \fBio_setup\fP() есть только в Linux, и он не должно использоваться в переносимых программах. .SH ЗАМЕЧАНИЯ .\" http://git.fedorahosted.org/git/?p=libaio.git glibc does not provide a wrapper for this system call. You could invoke it using \fBsyscall\fP(2). But instead, you probably want to use the \fBio_setup\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_idp\fP. Также заметим, что \fIlibaio\fP не следует соглашениям обычной библиотеки C для возврата ошибок: при ошибке она возвращает отрицательный номер ошибки (из списка в разделе ОШИБКИ). Если системный вызов вызывается с помощью \fBsyscall\fP(2), то возвращаемое значение следует обычным соглашениям для указания на ошибку: возвращается \-1 и в \fIerrno\fP записывается (положительное) значение возникшей ошибки. .SH "СМ. ТАКЖЕ" \fBio_cancel\fP(2), \fBio_destroy\fP(2), \fBio_getevents\fP(2), \fBio_submit\fP(2), \fBaio\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 .