sysv_signal(3) Library Functions Manual sysv_signal(3)

sysv_signal - obsługa sygnałów zachowująca się jak w Systemie V

Standardowa biblioteka C (libc-lc)

#define _GNU_SOURCE         /* Zob. feature_test_macros(7) */
#include <signal.h>
typedef typeof(void (int))  *sighandler_t;
sighandler_t sysv_signal(int signum, sighandler_t handler);

Funkcja sysv_signal() przyjmuje te same argumenty i służy tym samym celom co signal(2).

Wywołanie sysv_signal() zapewnia jednakże zawodną sematykę Systemu V, to jest: a) dyspozycja sygnału jest resetowana na domyślną, gdy przywoływana jest procedura obsługi sygnału; b) dostarczanie kolejnych wystąpień sygnału nie jest blokowane w trakcie wykonywania procedury obsługi sygnału; c) jeśli procedura obsługi sygnału przerwie (pewne) blokujące wywołania systemowe, to wywołanie systemowe nie jest automatycznie restartowane.

Funkcja sysv_signal() zwraca poprzednią wartość procedury obsługi sygnału albo, w razie wystąpienia błędu, SIG_ERR.

Takie jak w signal(2).

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

Interfejs Atrybut Wartość
sysv_signal() Bezpieczeństwo wątkowe MT-bezpieczne

Proszę unikać korzystania z sysv_signal(); należy zamiast tego używać sigaction(2).

W starszych systemach linuksowych sysv_signal() i signal(2) były równoważne. Jednak na nowszych systemach signal(2) zapewnia niezawodne zachowanie sygnałów; więcej informacji w podręczniku signal(2).

Korzystanie z sighandler_t jest rozszerzeniem GNU; typ ten jest definiowany tylko, gdy zdefiniowano makro sprawdzania cech _GNU_SOURCE.

Brak.

sigaction(2), signal(2), bsd_signal(3), signal(7)

Tłumaczenie niniejszej strony podręcznika: Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

17 maja 2025 r. Linux man-pages 6.15