Provided by: manpages-pl-dev_4.28.0-2_all 

NAZWA
bsd_signal - obsługa sygnałów zachowująca się jak w BSD
BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)
SKŁADNIA
#include <signal.h>
typedef void (*sighandler_t)(int);
sighandler_t bsd_signal(int signum, sighandler_t handler);
Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):
bsd_signal():
Od glibc 2.26:
_XOPEN_SOURCE >= 500
&& ! (_POSIX_C_SOURCE >= 200809L)
glibc 2.25 i wcześniejsze:
_XOPEN_SOURCE
OPIS
Funkcja bsd_signal() przyjmuje te same argumenty i służy tym samym celom co signal(2).
Różnicą pomiędzy nimi jest to, że bsd_signal() zapewnia gwarantowaną niezawodną semantykę sygnałów, to
jest: a) dyspozycja sygnału nie jest resetowana na domyślną, gdy przywoływana jest procedura obsługi
sygnału; b) dostarczanie kolejnych wystąpień sygnału jest blokowane w trakcie wykonywania procedury
obsługi sygnału; c) jeśli procedura obsługi sygnału przerwie blokujące wywołania systemowe, to wywołanie
systemowe jest automatycznie restartowane. Przenośne aplikacje nie mogą polegać na zapewnianiu tych
gwarancji przez signal(2).
WARTOŚĆ ZWRACANA
Funkcja bsd_signal() zwraca poprzednią wartość procedury obsługi sygnału albo, w razie wystąpienia błędu,
SIG_ERR.
BŁĘDY
Takie jak w signal(2).
ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
┌──────────────────────────────────────────────────────────────┬────────────────────────┬───────────────┐
│ Interfejs │ Atrybut │ Wartość │
├──────────────────────────────────────────────────────────────┼────────────────────────┼───────────────┤
│ bsd_signal() │ Bezpieczeństwo wątkowe │ MT-bezpieczne │
└──────────────────────────────────────────────────────────────┴────────────────────────┴───────────────┘
WERSJE
Proszę unikać korzystania z bsd_signal(); należy zamiast tego używać sigaction(2).
Na współczesnych systemach linuksowych, bsd_signal() i signal(2) są równoważne. Jednak na starszych
systemach, signal(2) zapewniało zawodną semantykę sygnałów; więcej szczegółów w podręczniku signal(2).
Korzystanie z sighandler_t jest rozszerzeniem GNU; typ ten jest definiowany tylko, gdy zdefiniowano makro
sprawdzania cech _GNU_SOURCE.
STANDARDY
Brak.
HISTORIA
4.2BSD, POSIX.1-2001. Usunięte w POSIX.1-2008, z zaleceniem stosowania w zamian sigaction(2).
ZOBACZ TAKŻE
sigaction(2), signal(2), sysv_signal(3), signal(7)
TŁUMACZENIE
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.
Linux man-pages 6.9.1 2 maja 2024 r. bsd_signal(3)