Scroll to navigation

ABORT(3) Manualul programatorului Linux ABORT(3)

NUME

abort - cauzează terminarea anormală a procesului

REZUMAT

#include <stdlib.h>
void abort(void);

DESCRIERE

abort() deblochează mai întâi semnalul SIGABRT și apoi lansează acest semnal pentru procesul apelant (ca și cum ar fi fost apelat raise(3)). Acest lucru are ca rezultat terminarea anormală a procesului, cu excepția cazului în care semnalul SIGABRT este prins și gestionarul de semnal nu returnează (a se vedea longjmp(3)).

În cazul în care semnalul SIGABRT este ignorat sau este prins de un gestionar care se întoarce, funcția abort() va încheia în continuare procesul. Aceasta face acest lucru prin restabilirea dispoziției implicite pentru SIGABRT și apoi prin lansarea semnalului pentru a doua oară.

VALOAREA RETURNATĂ

Funcția abort() nu returnează niciodată.

ATRIBUTE

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

Interfață Atribut Valoare
abort() Siguranța firelor MT-Safe

NOTE

Până la glibc 2.26, în cazul în care funcția abort() provoca terminarea procesului, toate fluxurile deschise erau închise și eliminate (ca în cazul fclose(3)). Cu toate acestea, în unele cazuri, acest lucru putea duce la blocaje și la coruperea datelor. Prin urmare, începând cu glibc 2.27, abort() termină procesul fără a închide fluxurile. POSIX.1 permite ambele comportamente posibile, spunând că abort() „poate include o încercare de a efectua fclose() pe toate fluxurile deschise”.

ÎN CONFORMITATE CU

SVr4, POSIX.1-2001, POSIX.1-2008, 4.3BSD, C89, C99.

CONSULTAȚI ȘI

gdb(1), sigaction(2), assert(3), exit(3), longjmp(3), raise(3)

COLOFON -- NOTĂ FINALĂ

Această pagină face parte din versiunea 4.16 a proiectului Linux man-pages. O descriere a proiectului, informații despre raportarea erorilor și cea mai recentă versiune a acestei pagini pot fi găsite la https://www.kernel.org/doc/man-pages/.

TRADUCERE

Traducerea în limba română a acestui manual a fost creată 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.

26 noiembrie 2017 GNU