.\" -*- coding: UTF-8 -*-
.\" This manpage is Copyright (C) 1992 Drew Eckhardt;
.\"             and Copyright (C) 1993 Michael Haardt, Ian Jackson.
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" Modified Wed Jul 21 23:02:38 1993 by Rik Faith <faith@cs.unc.edu>
.\" Modified 2001-11-17, aeb
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH _exit 2 "2 maja 2024 r." "Linux man\-pages 6.9.1" 
.SH NAZWA
_exit, _Exit \- kończy bieżący proces
.SH BIBLIOTEKA
Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP)
.SH SKŁADNIA
.nf
\fB#include <unistd.h>\fP
.P
\fB[[noreturn]] void _exit(int \fP\fIstatus\fP\fB);\fP
.P
\fB#include <stdlib.h>\fP
.P
\fB[[noreturn]] void _Exit(int \fP\fIstatus\fP\fB);\fP
.fi
.P
.RS -4
Wymagane ustawienia makr biblioteki glibc (patrz \fBfeature_test_macros\fP(7)):
.RE
.P
\fB_Exit\fP():
.nf
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
.fi
.SH OPIS
Funkcja \fB_exit\fP() "natychmiast" kończy proces, z którego została
wywołana. Wszystkie przynależące do procesu otwarte deskryptory plików są
zamykane; wszystkie jego procesy potomne są przejmowane przez \fBinit\fP (lub
przez najbliższy proces dorzynający (subreaper), zgodnie z definicją użycia
operacji \fBPR_SET_CHILD_SUBREAPER\fP \fBprctl\fP(2)). Jego proces macierzysty
otrzymuje sygnał \fBSIGCHLD\fP.
.P
Wartość \fIstatus & 0xFF\fP jest zwracana procesowi macierzystemu jako kod
zakończenia procesu wywołującego tę funkcję i może zostać odczytana przez
proces macierzysty za pomocą jednej z funkcji z rodziny \fBwait\fP(2).
.P
Funkcja \fB_Exit\fP() jest równoważna \fB_exit\fP().
.SH "WARTOŚĆ ZWRACANA"
Funkcje te nigdy nie powracają.
.SH STANDARDY
.TP 
\fB_exit\fP()
POSIX.1\-2008.
.TP 
\fB_Exit\fP()
C11, POSIX.1\-2008.
.SH HISTORIA
POSIX.1\-2001, SVr4, 4.3BSD.
.P
\fB_Exit\fP() wprowadzono w C99.
.SH UWAGI
Efekty zakończenia, transmisja kodu zakończenia, procesy zombie, przesyłanie
sygnałów itp. zostały przedyskutowane w \fBexit\fP(3).
.P
Funkcja \fB_exit\fP() jest podobna do \fBexit\fP(3), ale nie wywołuje żadnych
funkcji zarejestrowanych za pomocą funkcji \fBatexit\fP(3) lub
\fBon_exit\fP(3). Otwarte strumienie \fBstdio\fP(3) nie są opróżniane. Z drugiej
strony, \fB_exit\fP nie zamyka otwartych deskryptorów plików, co może
spowodować nieoczekiwane opóźnienia podczas oczekiwania na zakończenie
odłożonych zapisów. Jeśli opóźnienia te są niepożądane, to może być
przydatne wywołanie funkcji podobnych do \fItcflush\fP(3) przed wywołaniem
\fB_exit\fP().  To, czy jakiekolwiek odłożone wejścia/wyjścia zostaną anulowane
i które z nich mogą zostać anulowane podczas \fB_exit\fP(), zależy od
implementacji.
.SS "Różnice biblioteki C/jądra"
Powyższy tekst w OPISIE dotyczy tradycyjnych skutków \fB_exit\fP(),
obejmujących zakończenie procesu oraz semantykę określoną przez POSIX.1 i
zaimplementowaną przez opakowującą funkcję biblioteczną C. We współczesnych
systemach, oznacza to zakończenie wszelkich wątków procesu.
.P
.\" _exit() is used by pthread_exit() to terminate the calling thread
W odróżnieniu od opakowującej funkcji bibliotecznej C, surowe linuksowe
wywołanie systemowe \fB_exit\fP() kończy jedynie wywołujący wątek, a działania
obejmujące przypisanie nowego rodzica procesom potomnym lub wysłanie
\fBSIGCHLD\fP do procesów macierzystych są wykonywane wyłącznie w sytuacji, gdy
jest to ostatni wątek z danej grupy wątków.
.P
Do glic 2.3, funkcja opakowująca \fB_exit\fP() przywoływała wywołanie systemowe
o tej samej nazwie. Od glibc 2.3, funkcja opakowująca wywołuje
\fBexit_group\fP(2), w celu zakończenia wszystkich wątków w procesie.
.SH "ZOBACZ TAKŻE"
\fBexecve\fP(2), \fBexit_group\fP(2), \fBfork\fP(2), \fBkill\fP(2), \fBwait\fP(2),
\fBwait4\fP(2), \fBwaitpid\fP(2), \fBatexit\fP(3), \fBexit\fP(3), \fBon_exit\fP(3),
\fBtermios\fP(3)
.PP
.SH TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika:
Przemek Borys <pborys@dione.ids.pl>,
Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>
i
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
