gsignal(3) Library Functions Manual gsignal(3)

gsignal, ssignal - facilitate de semnal software

Biblioteca C standard (libc, -lc)

#include <signal.h>
typedef void (*sighandler_t)(int);
[[depreciat]] int gsignal(int signum);
[[depreciat]] sighandler_t ssignal(int signum, sighandler_t action);
Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

gsignal(), ssignal():

    Începând cu glibc 2.19:
        _DEFAULT_SOURCE
    glibc 2.19 și versiunile anterioare:
        _SVID_SOURCE

Nu utilizați aceste funcții în Linux. Din cauza unei greșeli din trecut, în Linux aceste funcții sunt alias pentru raise(3) și, respectiv, signal(2).

Pe de altă parte, în sistemele de tip System V, aceste funcții implementează semnalizarea software, complet independentă de funcțiile clasice signal(2) și kill(2). Funcția ssignal() definește acțiunea care trebuie întreprinsă atunci când semnalul software cu numărul signum este lansat cu ajutorul funcției gsignal() și returnează acțiunea anterioară de acest tip sau SIG_DFL. Funcția gsignal() face următoarele: dacă nu a fost specificată nicio acțiune (sau acțiunea SIG_DFL) pentru signum, atunci nu face nimic și returnează 0. Dacă a fost specificată acțiunea SIG_IGN pentru signum, atunci nu face nimic și returnează 1. În caz contrar, se resetează acțiunea la SIG_DFL și apelează funcția de acțiune cu argumentul signum și returnează valoarea returnată de această funcție. Intervalul de valori posibile signum variază (adesea 1–15 sau 1–17).

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
gsignal() Siguranța firelor MT-Safe
ssignal() Siguranța firelor MT-Safe sigintr

Niciunul.

AIX, DG/UX, HP-UX, SCO, Solaris, Tru64. Acestea sunt numite învechite în majoritatea acestor sisteme și sunt nefuncționale sub glibc. Unele sisteme au, de asemenea, gsignal_r() și ssignal_r().

kill(2), signal(2), raise(3)

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

31 octombrie 2023 Pagini de manual de Linux 6.06