Conceptul semnalelor
În continuare: trimiterea de semnale prin Sus: Semnale anterioară: Cuprins Semnale
Mecanismul de semnalizare este alcătuit din următoarele părți:
Există trei semnale de răspuns variante cunoscute:
- apela propriile funcții de procesare;
- ignorând semnalul (nu funcționează pentru SIGKILL);
- utilizați funcția implicită de procesare prestabilită.
void (* semnal (int signr, void (* sighandler) (int))) (int); Acest prototip este foarte greu de înțeles. Este necesar să-l simplifice prin definirea tipului de funcții de procesare:
typedef void signalfunction (int); După aceasta, prototipul funcția devine: signalfunction * semnal (int signr,
signalfunction * sighandler); signr stabilește numărul semnalului pentru care a seta handler. Fișierul antet
Tabel 1. Linux semnale ale sistemului de operare.
Redimensionarea
sighandler variabilă determină funcția de procesare a semnalului. Fișierul antet
semnal (SIGINT, SIG_IGN);
Exemplu de tratare a semnalului este prezentată mai jos: #include
void sigfunc (int sig)
printf ( "# 92; program complet nNu (y / n).");
printf ( „Puteți termina programul cu ajutorul