.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl) .\" and Copyright (C) 2010 Michael Kerrisk .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH aio_suspend 3 "20 июля 2023 г." "Linux man\-pages 6.05.01" .SH ИМЯ aio_suspend \- ожидает завершения операции ввода\-вывода или истечения срока .SH LIBRARY Real\-time library (\fIlibrt\fP, \fI\-lrt\fP) .SH СИНТАКСИС .nf .PP \fB#include \fP .PP \fBint aio_suspend(const struct aiocb *const \fP\fIaiocb_list\fP\fB[], int \fP\fInitems\fP\fB,\fP \fB const struct timespec *restrict \fP\fItimeout\fP\fB);\fP .fi .SH ОПИСАНИЕ Функция \fBaio_suspend\fP() приостанавливает выполнение вызывающей нити до тех пор, пока не случиться одно из следующих событий: .IP \[bu] 3 Завершится один или более асинхронных запросов ввода\-вывода из списка \fIaiocb_list\fP. .IP \[bu] Будет получен сигнал. .IP \[bu] Если значение \fItimeout\fP не NULL и истечёт указанный срок (описание структуры \fItimespec\fP смотрите в \fBnanosleep\fP(2)). .PP В аргументе \fInitems\fP задаётся количество элементов в \fIaiocb_list\fP. Каждый элемент в списке, который задаётся в \fIaiocb_list\fP, должен быть равен NULL (игнорируется), или указывать на управляющий блок, который создаётся при создании операции ввода\-вывода с помощью \fBaio_read\fP(3), \fBaio_write\fP(3) или \fBlio_listio\fP(3) (описание структуры \fIaiocb\fP смотрите в \fBaio\fP(7)). .PP If \fBCLOCK_MONOTONIC\fP is supported, this clock is used to measure the timeout interval (see \fBclock_gettime\fP(2)). .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" Если функция завершается после выполнения запроса ввода\-вывода из списка \fIaiocb_list\fP, то возвращается 0. В противном случае возвращается \-1, а значением \fIerrno\fP определяется тип ошибки. .SH ОШИБКИ .TP \fBEAGAIN\fP Истёк период ожидания в вызове до завершения какой\-либо операции. .TP \fBEINTR\fP Вызов завершён по сигналу (возможно по сигналу, который ожидался как завершение операции); смотрите \fBsignal\fP(7). .TP \fBENOSYS\fP Функция \fBaio_suspend\fP() не реализована. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBaio_suspend\fP() T} Безвредность в нитях MT\-Safe .TE .sp 1 .SH СТАНДАРТЫ POSIX.1\-2008. .SH ИСТОРИЯ glibc 2.1. POSIX.1\-2001. .PP POSIX doesn't specify the parameters to be \fIrestrict\fP; that is specific to glibc. .SH ЗАМЕЧАНИЯ Можно выполнить опрос с не NULL значением \fItimeout\fP, указав нулевой временной интервал. .PP Если одна или несколько асинхронных операций ввода\-вывода, указанных в \fIaiocb_list\fP, уже завершилась на момент вызова \fBaio_suspend\fP(), то вызов сразу завершает работу. .PP Чтобы после успешного возврата из \fBaio_suspend\fP() определить, какие операции ввода\-вывода завершились, используйте \fBaio_error\fP(3) для проверки списка структур \fIaiocb\fP, на который указывает \fIaiocb_list\fP. .SH ДЕФЕКТЫ .\" FIXME . https://sourceware.org/bugzilla/show_bug.cgi?id=13172 Реализация \fBaio_suspend\fP() в glibc не является безопасной для асинхронных сигналов, что нарушает требования POSIX.1. .SH "СМ. ТАКЖЕ" \fBaio_cancel\fP(3), \fBaio_error\fP(3), \fBaio_fsync\fP(3), \fBaio_read\fP(3), \fBaio_return\fP(3), \fBaio_write\fP(3), \fBlio_listio\fP(3), \fBaio\fP(7), \fBtime\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 .