У POSIX-сістэмах, SIGABRT — сігнал, які дасылаецца працэсам самому сабе пры выконванні функцыі abort(), для аварыйнага супыну, у выпадку немагчымасці далейшага працягу праграмы.

SIGABRT
Апісанне: Сігнал аварыйнага завяршэння, які ўжывае abort()
Па змоўчванню: завяршэнне з дампам памяці
коды SA_SIGINFO
(не мае спецыфічных кодаў)

SIGABRT — цэлалікавая канстанта, вызначаная ў загалоўкавым файле signal.h. Сімвальныя імёны сігналаў ужываюцца замест нумароў, бо ў розных рэалізацыях нумары сігналаў могуць адрознівацца.

У GNU/Linux, таксама ёсць сігнал SIGIOT які з'яўляецца сінонімам SIGABRT.

Этымалогія правіць

SIG — агульны прэфікс сігналаў, АBRT — скарочанае напісанне англ.: abort — заўчаснае спыненне, перапыненне (англійскі камп'ютарны жаргон). IOT абрэвіятура англ.: I/O transfer Trap — пастка увода-вывада (таксама IOT з'яўляецца мнемонікай інструкцыі PDP-8 абрэвіятура I/O Transfer)

Ужыванне правіць

Сігнал SIGABRT працэс дасылае сам сабе, калі вызывае функцыю abort() (функцыя libc, з прататыпам у stdlib.h). Сігнал SIGABRT можа быць перахоплены ці праігнараваны, але abort() прымусова завершыць праграму (папярэдне скінуўшы і зачыніўшы стандартныя струмені і зрабіўшы дамп памяці праграмы) нават калі гэта не зробіць апрацоўшчык сігналу. Такім чынам функцыя abort() гарантуе завяршэнне праграмы, чаму яна часта ўжываецца бібліятэкамі ў аварыйных сітуацыях — калі выкананне не павінна быць працягнута, але асноўная праграма павінна мець магчымасць выканаць дзеянні, патрэбныя перад аварыйным завяршэннем.

Таксама SIGABRT выклікаецца сцвярджэннямі (англ.: assertions; сродак адладкі Сі — макравызначэнне assert() выклікае abort() калі сцвярджэнне перададзенае ў якасці аргумента ілжыва).