SIGABRT | |
---|---|
Descriere | Semnalul de anulare utilizatabort() |
Mod implicit | se încheie cu un dump de memorie |
Codurile SA_SIGINFO | |
Nu are coduri specifice |
SIGABRT (din engleză signal and abort ) este un semnal folosit în sistemele POSIX , trimis de un proces către el însuși atunci când execută o funcție abort()pentru a se bloca cu un dump de memorie în cazul în care este imposibilă continuarea programului.
Definit ca o constantă întreagă în fișierul antet signal.h. Linux folosește un semnal sinonim - SIGIOT ( din engleza I / O transfer trap - I / O trap).
Funcția abort()care trimite acest semnal către procesul în sine este definită în libc cu un prototip în stdlib.h . Semnalul poate fi captat sau ignorat, dar abort()va forța programul să se termine (prin spălarea și închiderea fluxurilor standard și descărcarea memoriei programului), chiar dacă handlerul de semnal nu o face. În acest fel, funcția abort()garantează terminarea programului, motiv pentru care este adesea folosită de biblioteci în situații de urgență - când execuția nu trebuie continuată, dar programul principal ar trebui să poată efectua acțiunile necesare înainte de a se prăbuși.
SIGABRT este de asemenea apelat de aserțiuni (instrumentul de depanare C - macro assert() invocă abort()dacă aserția transmisă ca argument este falsă).
Semnale POSIX | |||
---|---|---|---|
| |||
|