_exit

Autres langues

Langue: pl

Autres versions - même langue

Version: 2001-11-17 (openSuse - 09/10/07)

Section: 2 (Appels système)

NAZWA

_exit, _Exit - zakoñczenie bie¿±cego procesu

SK£ADNIA

#include <unistd.h>

void _exit(int status);

#include <stdlib.h>

void _Exit(int status);

OPIS

Funkcja _exit "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 proces 1, init, a jego proces macierzysty otrzymuje sygna³ SIGCHLD.

Warto¶æ status jest zwracana procesowi macierzystemu jako kod zakoñczenia procesu wywo³uj±cego tê funkcjê i mo¿e zostaæ odczytana za pomoc± jednej z funkcji z rodziny wait.

Funkcja _Exit jest równowa¿na _exit.

WARTO¦Æ ZWRACANA

Funkcje te nigdy nie powracaj±.

ZGODNE Z

SVr4, SVID, POSIX, X/OPEN, BSD 4.3 Funkcja _Exit() zosta³a wprowadzona przez C99.

UWAGI

Efekty zakoñczenia, transmisja kodu zakoñczenia, procesy zombie, przesy³anie sygna³ów itp. zosta³y przedyskutowane w exit(3).

Funkcja _exit jest podobna do exit(), ale nie wywo³uje ¿adnych funkcji zarejestrowanych za pomoc± funkcji ANSI C atexit ani ¿adnych zarejestrowanych funkcji obs³ugi sygna³ów. To, czy wypró¿nia ona standardowe bufory we/wy i usuwa pliki tymczasowe utworzone za pomoc± tmpfile(3), zale¿y od implementacji. Z drugiej strony, _exit 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 tcflush() przed wywo³aniem _exit(). To, czy jakiekolwiek od³o¿one we/wy zostanie anulowane i które z nich mog± zostaæ anulowane podczas _exit(), zale¿y od iplementacji.

ZOBACZ TAK¯E

fork(2), execve(2), waitpid(2), wait4(2), kill(2), wait(2), exit(3), termios(3)