ÜBERSICHT
#include <stdlib.h>
int on_exit(void (*function)(int , void *), void *arg);
Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):
on_exit():
Seit Glibc 2.19:
_DEFAULT_SOURCE
Glibc 2.19 und älter:
_BSD_SOURCE || _SVID_SOURCE
BESCHREIBUNG
Die Funktion on_exit() registriert die angegebene Funktion function, damit diese bei normaler Prozessbeendigung aufgerufen wird. Also durch exit(3) oder nach Verlassen der main-Funktion des Programms. Der Funktion function wird das Argument status des letzten Aufrufes von exit(3) und das Argument arg von on_exit() übergeben.Die gleiche Funktion kann mehrfach registriert werden: sie wird einmal für jede Registrierung aufgerufen.
Wenn mittels fork(2) ein Kind-Prozess erzeugt wird, erbt er Kopien der Registrierungen seiner Eltern. Nach einem erfolgreichen Aufruf einer der exec(3)-Funktionen werden alle Registrierungen entfernt.
RÜCKGABEWERT
Die Funktion on_exit() gibt im Erfolgsfall 0 zurück, anderenfalls ist der Rückgabewert ungleich 0.ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.Schnittstelle | Attribut | Wert |
on_exit() | Multithread-Fähigkeit | MT-Safe |
KONFORM ZU
Diese Funktion stammt aus SunOS 4, ist aber auch in der Glibc vorhanden. Sie tritt nicht mehr in Solaris (SunOS 5) auf. Portierbare Anwendungen sollten diese Funktion meiden; verwenden Sie stattdessen die Standardfunktion atexit(3).KOLOPHON
Diese Seite ist Teil der Veröffentlichung 4.06 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Stefan Janke <[email protected]>, Martin Eberhard Schauer <[email protected]> und Mario Blättermann <[email protected]> erstellt.Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <[email protected]>.