SIGPIPE

SIGPIPE
Descriere scriind la o conexiune întreruptă
Mod implicit încetarea procesului
Codurile SA_SIGINFO
Nu are coduri specifice

În sistemele POSIX , SIGPIPE  este un semnal trimis unui proces atunci când scrieți într-o conexiune (țeavă, priză) când nu există o conexiune întreruptă cu cealaltă parte (cititor).

SIGPIPE este o constantă întreagă definită în signal.h. Numele simbolice ale semnalelor sunt folosite în locul numerelor, deoarece numerele semnalelor pot diferi în diferite implementări.

Etimologie

SIG - prefix de semnal  comun (din engleză  semnal ), PIPE  - engleză.  teava  - teava, racord.

Utilizare

O conductă este un  canal unidirecțional între procese care permite unui proces să trimită date către altul fără a fi nevoie să creeze fișiere pe disc. Când o conductă se rupe, procesul care încearcă să scrie acolo primește un SIGPIPE.

Cea mai simplă versiune a conductei creează un shell Unix, între programele rulate din linia de comandă, separate prin caracterul „|”, de exemplu, linia de comandă:

dmesg | Mai puțin

creează o conductă din program dmesg(imprimarea mesajelor de depanare a nucleului la pornire) către pager less. Dacă programul lessse termină înainte de a primi toate ieșirile dmesg, dmesgacesta va fi terminat prematur cu semnalul SIGPIPE.

SIGPIPE poate fi primit și de un program care lucrează cu o conexiune la rețea - o priză, de exemplu, atunci când se lucrează prin protocolul TCP din familia IP .