.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk) .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" References consulted: .\" Linux libc source code .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991) .\" 386BSD man pages .\" Modified 1993-04-02, David Metcalfe .\" Modified 1993-07-25, Rik Faith (faith@cs.unc.edu) .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH on_exit 3 "5 февраля 2023 г." "Linux man\-pages 6.03" .SH ИМЯ on_exit \- регистрирует функцию для вызова в случае нормального завершения процесса .SH LIBRARY Standard C library (\fIlibc\fP, \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .PP \fBint on_exit(void (*\fP\fIfunction\fP\fB)(int, void *), void *\fP\fIarg\fP\fB);\fP .fi .PP .RS -4 Требования макроса тестирования свойств для glibc (см. \fBfeature_test_macros\fP(7)): .RE .PP \fBon_exit\fP(): .nf начиная с glibc 2.19: _DEFAULT_SOURCE в glibc 2.19 и старее: _BSD_SOURCE || _SVID_SOURCE .fi .SH ОПИСАНИЕ Функция \fBon_exit\fP() регистрирует указанную \fIfunction\fP для вызова в случае нормального завершения процесса с помощью \fBexit\fP(3) или при выходе из функции \fImain\fP(). Функции \fIfunction\fP передаётся аргумент состояния, указанный в последнем вызове \fBexit\fP(3), а также аргумент \fIarg\fP из \fBon_exit\fP(). .PP Одна функция может быть зарегистрирована несколько раз: она вызывается один раз для каждой регистрации. .PP Когда дочерний процесс создаётся через \fBfork\fP(2), он наследует копии регистраций родителя. При успешном выполнении одной из функций \fBexec\fP(3) все регистрации снимаются. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" Функция \fBon_exit\fP() при успешном выполнении возвращает 0, в противном случае — ненулевое значение. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .ad l .nh .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ \fBon_exit\fP() T} Безвредность в нитях MT\-Safe .TE .hy .ad .sp 1 .SH СТАНДАРТЫ Эта функция впервые появилась в SunOS 4, но также она присутствует в glibc. В Solaris (SunOS 5) её уже нет. Избегайте этой функции и используйте вместо нее стандартную \fBatexit\fP(3). .SH ЗАМЕЧАНИЯ К моменту выполнения \fIfunction\fP стек переменных (\fIauto\fP) уже может пропасть из области видимости. Поэтому \fIarg\fP не должен быть указателем на переменную в стеке; однако он может быть указателем на переменную в куче или глобальную переменную. .SH "СМ. ТАКЖЕ" \fB_exit\fP(2), \fBatexit\fP(3), \fBexit\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Azamat Hackimov , Konstantin Shvaykovskiy , 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 .