abort(3) Library Functions Manual abort(3) BEZEICHNUNG abort - Auslosen anormaler Prozessbeendigung BIBLIOTHEK Standard-C-Bibliothek (libc, -lc) UBERSICHT #include [[noreturn]] void abort(void); BESCHREIBUNG Die Funktion abort() hebt zuerst die Blockierung des Signals SIGABRT auf und lost das Signal dann fur den aufrufenden Prozess aus (als ob raise(3) aufgerufen worden ware). Dies fuhrt zur anormalen Prozessbeendigung, ausser wenn das Signal SIGABRT abgefangen wird und der Signal-Handhaber nicht zuruckkehrt (siehe longjmp(3)). Falls das Signal SIGABRT ignoriert oder vom Handhaber der zuruckkehrt abgefangen wird, wird die Funktion abort() weiterhin den Prozess beenden. Es erledigt dies, indem es die Standard-Disposition fur SIGABRT wieder herstellt und dann das Signal erneut auslost. Wie bei anderen Falle anomaler Beendigung werden die mit atexit(3) und on_exit(3) registrierten Funktionen nicht aufgerufen. RUCKGABEWERT Die Funktion abort() kehrt niemals zuruck. ATTRIBUTE Siehe attributes(7) fur eine Erlauterung der in diesem Abschnitt verwandten Ausdrucke. +--------------------------------+-------------------------+-----------+ |Schnittstelle | Attribut | Wert | +--------------------------------+-------------------------+-----------+ |abort() | Multithread-Fahigkeit | MT-Sicher | +--------------------------------+-------------------------+-----------+ STANDARDS C11, POSIX.1-2008. GESCHICHTE SVr4, POSIX.1-2001, 4.3BSD, C89. Bis einschliesslich Glibc 2.26 wurden alle offenen Datenstrome geschlossen und rausgeschrieben (wie mit fclose(3)), falls die Funktion abort() zur Prozessbeendigung fuhrte. Dies konnte allerdings in einigen Fallen zu Verklemmungen und Datenbeschadigungen fuhren. Daher beendet abort() seit Glibc 2.27 den Prozess ohne die Datenstrome rauszuschreiben. POSIX.1 erlaubt beide moglichen Verhaltensweisen und teilt mit, dass abort() >>alle Versuche unternehmen darf, fclose() auf allen offenen Datenstromen durchzufuhren<<. SIEHE AUCH gdb(1), sigaction(2), assert(3), exit(3), longjmp(3), raise(3) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.06 31. Oktober 2023 abort(3)