Provided by: manpages-ru-dev_4.21.0-2_all bug

ИМЯ

       wait3, wait4 - ожидает смену состояния в стиле BSD

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #include <sys/wait.h>

       pid_t wait3(int *_Nullable wstatus, int options,
                   struct rusage *_Nullable rusage);
       pid_t wait4(pid_t pid, int *_Nullable wstatus, int options,
                   struct rusage *_Nullable rusage);

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       wait3():
           Since glibc 2.26:
               _DEFAULT_SOURCE
                   || (_XOPEN_SOURCE >= 500 &&
                       ! (_POSIX_C_SOURCE >= 200112L
                          || _XOPEN_SOURCE >= 600))
           From glibc 2.19 to glibc 2.25:
               _DEFAULT_SOURCE || _XOPEN_SOURCE >= 500
           glibc 2.19 and earlier:
               _BSD_SOURCE || _XOPEN_SOURCE >= 500

       wait4():
           Начиная с glibc 2.19:
               _DEFAULT_SOURCE
           В версии glibc 2.19 и более ранних:
               _BSD_SOURCE

ОПИСАНИЕ

       Эти функции являются нестандартными; в новых программах используйте waitpid(2) или waitid(2).

       Системные  вызовы  wait3()  и  wait4()  похожи  на  waitpid(2), но дополнительно возвращают информацию об
       использовании ресурсов потомком в структуре, указываемой rusage.

       Помимо использования аргумента rusage, вызов wait3():

           wait3(wstatus, options, rusage);

       эквивалентен:

           waitpid(-1, wstatus, options);

       Подобно этому, вызов wait4():

           wait4(pid, wstatus, options, rusage);

       эквивалентен:

           waitpid(pid, wstatus, options);

       Другими словами, wait3() ожидает любого потомка, а для wait4() может быть указан определённый потомок или
       потомки, которых нужно ожидать. Подробней см. wait(2).

       Если rusage не равно NULL, то struct rusage, на которую он указывает, будет заполнен информацией о работе
       потомка. Подробней см. getrusage(2).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       Как в waitpid(2).

ОШИБКИ

       Как в waitpid(2).

СТАНДАРТЫ

       4.3BSD.

       В SUSv1 определена wait3(); в SUSv2 включена wait3(), но помечена как УСТАРЕВШАЯ; удалена в SUSv3.

ЗАМЕЧАНИЯ

       Включать <sys/time.h> в настоящее время не требуется, но это увеличивает  переносимость.  (Безусловно,  в
       <sys/resource.h>  определена  структура  rusage  с  полями  типа  struct  timeval,  которая  определена в
       <sys/time.h>.)

   Отличия между библиотекой C и ядром
       В Linux, wait3() является библиотечной функцией, реализованной на основе системного вызова wait4().

СМ. ТАКЖЕ

       fork(2), getrusage(2), sigaction(2), signal(2), wait(2), signal(7)

ПЕРЕВОД

       Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>  и  Yuri
       Kozlov <yuray@komyakino.ru>

       Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3
       или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо
       на man-pages-ru-talks@lists.sourceforge.net.

Linux man-pages 6.03                            5 февраля 2023 г.                                       wait4(2)