.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl) .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH aio_write 3 "31 октября 2023 г." "Linux man\-pages 6.06" .SH ИМЯ aio_write \- асинхронная запись .SH LIBRARY Real\-time library (\fIlibrt\fP, \fI\-lrt\fP) .SH СИНТАКСИС .nf \fB#include \fP .P \fBint aio_write(struct aiocb *\fP\fIaiocbp\fP\fB);\fP .fi .SH ОПИСАНИЕ Функция \fBaio_write\fP() ставит в очередь запрос ввода\-вывода, описанный в буфере, на который указывает \fIaiocbp\fP. Эта функция является асинхронным аналогом вызова \fBwrite\fP(2). Аргументы функции .P .in +4n .EX write(fd, buf, count) .EE .in .P соответствуют (в указанном порядке) полям \fIaio_fildes\fP, \fIaio_buf\fP и \fIaio_nbytes\fP структуры, на которую указывает \fIaiocbp\fP (описание структуры \fIaiocb\fP смотрите в \fBaio\fP(7)). .P Если флаг \fBO_APPEND\fP не установлен, то данные записываются начиная от абсолютного положения в файле \fIaiocbp\->aio_offset\fP, независимо от смещения в файле. Если флаг \fBO_APPEND\fP установлен, то данные записываются в конец файла в том порядке, в котором запускались вызовы \fBaio_write\fP(). После вызова значение смещения файла не определено. .P The "asynchronous" means that this call returns as soon as the request has been enqueued; the write may or may not have completed when the call returns. One tests for completion using \fBaio_error\fP(3). The return status of a completed I/O operation can be obtained \fBaio_return\fP(3). Asynchronous notification of I/O completion can be obtained by setting \fIaiocbp\->aio_sigevent\fP appropriately; see \fBsigevent\fP(3type) for details. .P Если определён макрос \fB_POSIX_PRIORITIZED_IO\fP и данный файл его поддерживает, асинхронная операция устанавливается в очередь с приоритетом вызывающего процесса минус \fIaiocbp\->aio_reqprio\fP. .P Поле \fIaiocbp\->aio_lio_opcode\fP игнорируется. .P Запись не производится в обычный файл, если смещение превышает максимум. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" On success, 0 is returned. On error, the request is not enqueued, \-1 is returned, and \fIerrno\fP is set to indicate the error. If an error is detected only later, it will be reported via \fBaio_return\fP(3) (returns status \-1) and \fBaio_error\fP(3) (error status\[em]whatever one would have gotten in \fIerrno\fP, such as \fBEBADF\fP). .SH ОШИБКИ .TP \fBEAGAIN\fP Не хватает ресурсов. .TP \fBEBADF\fP Значение \fIaio_fildes\fP не является правильным файловым дескриптором, открытым для записи. .TP \fBEFBIG\fP Файл является обычным файлом, мы хотим записать не менее одного байта, но начальная позиция равна максимальному значению смещения этого файла или превышает его. .TP \fBEINVAL\fP Одно или несколько значений у \fIaio_offset\fP, \fIaio_reqprio\fP или \fIaio_nbytes\fP, неверны. .TP \fBENOSYS\fP Функция \fBaio_write\fP() не реализована. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBaio_write\fP() T} Безвредность в нитях MT\-Safe .TE .SH СТАНДАРТЫ POSIX.1\-2008. .SH ИСТОРИЯ glibc 2.1. POSIX.1\-2001. .SH ЗАМЕЧАНИЯ .\" or the control block of the operation Желательно обнулять буфер блока управления перед использованием. Блок управления не должен изменяться во время выполнения операции записи. Область буфера, в которую выполняется запись, должна быть недоступна во время операции, иначе поведение непредсказуемо. Области памяти, с которыми производится работа, должны оставаться доступными. .P Одновременное выполнение операций ввода\-вывода через совместно используемую структуру \fIaiocb\fP приводит к непредсказуемым результатам. .SH "СМ. ТАКЖЕ" \fBaio_cancel\fP(3), \fBaio_error\fP(3), \fBaio_fsync\fP(3), \fBaio_read\fP(3), \fBaio_return\fP(3), \fBaio_suspend\fP(3), \fBlio_listio\fP(3), \fBaio\fP(7) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Dmitry Bolkhovskikh и 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 .