focal (2) wait3.2.gz

Provided by: manpages-pl-dev_0.7-2_all bug

NAZWA

       wait3, wait4 - oczekiwanie na zakończenie procesu (styl BSD)

SKŁADNIA

       #include <sys/types.h>
       #include <sys/time.h>
       #include <sys/resource.h>
       #include <sys/wait.h>

       pid_t wait3(int *status, int opcje,
             struct rusage *ruzycie);

       pid_t wait4(pid_t pid, int *status, int opcje,
             struct rusage *ruzycie);

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       Funkcja  wait3  zawiesza wykonywanie bieżącego procesu aż jego potomek nie zakończy działania, lub aż nie
       zostanie dostarczony sygnał, którego akcją jest  zakończenie  bieżącego  procesu  lub  wywołanie  funkcji
       obsługi sygnału.  Jeśli potomek zakończył działanie przed wywołaniem tej funkcji (tzw.  "zombie" - proces
       duch), zakończy ona działanie natychmiast. Wszelkie zasoby systemowe używane przez potomka są zwalniane.

       Funkcja wait4 zawiesza wykonywanie bieżącego  procesu  aż  potomek,  określony  przez  argument  pid  nie
       zakończy  działania,  lub  aż  nie  zostanie dostarczony sygnał, którego akcją jest zakończenie bieżącego
       procesu lub wywołanie funkcji obsługi sygnału. Jeśli potomek określony przez pid już zakończył  działanie
       (proces  duch), funkcja kończy działanie natychmiast.  Wszelkie zasoby systemowe używane przez potomka są
       zwalniane.

       Wartość pid może być jednym z:

       < -1   oznacza oczekiwanie na dowolnego potomka, którego identyfikator grupy procesów jest równy modułowi
              wartości pid.

       -1     co oznacza oczekiwanie na dowolny proces potomny; jest to równoważne wywołaniu wait3.

       0      oznacza  oczekiwanie  na  dowolnego  potomka,  którego  identyfikator  grupy  procesów  jest równy
              identyfikatorowi procesu wołającego.

       > 0    oznacza oczekiwanie na potomka, którego PID jest równy wartości pid.

       Wartość argumentu opcje jest bitowym OR zera lub więcej spośród następujących stałych:

       WNOHANG
              oznacza zwrócenie wartości natychmiast w wypadku gdy nie ma potomka, na którego można by czekać.

       WUNTRACED
              oznacza również nieobsługiwanie  zatrzymanych  potomków  oraz  tych,  których  status  nie  został
              zgłoszony.

       Jeśli  status  nie  wynosi  NULL,  wait3 i wait4 zapisują w miejscu wskazywanym przez status informacje o
       stanie.

       Stan ten może być określony za  pomocą  następujących  makr  (pobierających  jako  argument  bufor  stanu
       (wartość int), —  nie wskaźnik do tego bufora:

       WIFEXITED(status)
              jest niezerowe, gdy potomek zakończył pracę normalnie.

       WEXITSTATUS(status)
              wyraża  ostatnich  osiem  znaczących  bitów  kodu  powrotu  zakończonego  potomka  (który mógł być
              ustawiony jako argument funkcji exit lub jako argument  instrukcji  return  w  programie  głównym.
              Makro to może być przetwarzane tylko jeśli WIFEXITED zwróciło wartość niezerową.

       WIFSIGNALED(status)
              zwraca prawdę, jeśli potomek zakończył działanie z powodu nieprzechwyconego sygnału.

       WTERMSIG(status)
              zwraca numer sygnału, który spowodował zakończenie procesu potomnego.  Makro to może być wyliczane
              tylko po zwróceniu przez WIFSIGNALED wartości niezerowej.

       WIFSTOPPED(status)
              zwraca prawdę, jeśli proces potomny, który spowodował wyjście jest  obecnie  zatrzymany.  Jest  to
              możliwe tylko jeśli wywołanie wykonano z użyciem WUNTRACED.

       WSTOPSIG(status)
              zwraca  numer  sygnału, który spowodował zatrzymanie potomka. Makro to może być wyliczane tylko po
              zwróceniu przez WIFSTOPPED wartości niezerowej.

       Jeśli ruzycie nie jest równe NULL, zdefiniowana w <sys/resource.h>  struktura  struct  rusage,  na  którą
       ruzycie  wskazuje,  zostanie wypełniona informacjami o wykorzystywaniu zasobów.  Szczegóły znajdują się w
       getrusage(2).

WARTOŚĆ ZWRACANA

       Identyfikator zakończonego procesu lub -1 w przypadku błędu (w szczególności,  gdy  nie  istnieje  proces
       potomny  zadanego  rodzaju, na który można by oczekiwać), lub zero jeśli użyto WNOHANG i nie był dostępny
       żaden potomek. W ostatnich dwóch przypadkach zostanie odpowiednio ustawione errno.

BŁĘDY

       ECHILD Nie istnieje żaden odpowiedni proces potomny, na który można by oczekiwać.

       EINTR  Jeśli nie ustawiono WNOHANG a został przechwycony niezablokowany sygnał lub SIGCHLD.

       UWAGI  Dołączenie <sys/time.h> nie  jest  obecnie  wymagane,  lecz  zwiększa  przenośność.   (Faktycznie,
              <sys/resource.h>  zawiera  definje  struktury rusage z polami typu struct timeval zdefiniowanego w
              <sys/time.h>.)

       Prototyp dla tych funkcji jest dostępny jedynie, gdy zdefiniowano _BSD_SOURCE (jawnie lub pośrednio,  nie
       definiując _POSIX_SOURCE lub kompilując z opcją -ansi).

ZGODNE Z

       SVr4, POSIX.1

ZOBACZ TAKŻE

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

INFORMACJE O TŁUMACZENIU

       Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
       W razie zauważenia różnic między powyższym opisem a rzeczywistym  zachowaniem  opisywanego  programu  lub
       funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:

              man --locale=C 2 wait4

       Prosimy   o   pomoc   w   aktualizacji   stron   man  -  więcej  informacji  można  znaleźć  pod  adresem
       http://sourceforge.net/projects/manpages-pl/.