malloc_get_state(3) | Library Functions Manual | malloc_get_state(3) |
BEZEICHNUNG
malloc_get_state, malloc_set_state - Den Zustand der Malloc-Implementierung aufzeichnen und wiederherstellen
BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)
ÜBERSICHT
#include <malloc.h>
void *malloc_get_state(void); int malloc_set_state(void *zustand);
BESCHREIBUNG
Hinweis: Diese Funktionen wurden in Glibc 2.25 entfernt.
Die Funktion malloc_get_state() zeichnet den aktuellen Zustand aller internen Buchhaltungsvariablen von malloc(3) auf (aber nicht die tatsächlichen Inhalte des Heaps oder den Zustand der Funktionszeiger malloc_hook(3)). Der Zustand wird in einer systemabhängigen, nichtransparenten Datenstruktur aufgezeichnet, die dynamisch mittels malloc(3) belegt wird, und ein Zeiger auf diese Datenstruktur wird als Funktionsergebnis zurückgeliefert. (Es ist die Aufgabe des Aufrufenden, diesen Speicher mit free(3) freizugeben.)
Die Funktion malloc_set_state() stellt den Zustand aller internen Buchhaltungsvariablen von malloc(3) auf die in der nichtransparenten Datenstruktur, auf die Zustand zeigt, aufgezeichneten Werte wieder her.
RÜCKGABEWERT
Im Erfolgsfall liefert malloc_get_state() einen Zeiger auf eine frisch belegte, nichttransparente Datenstruktur zurück. Im Fehlerfall (falls beispielsweise der Speicher für die Datenstruktur nicht belegt werden konnte) liefert malloc_get_state() NULL zurück.
Im Erfolgsfall liefert malloc_set_state() 0 zurück. Falls die Implementierung erkennt, dass Zustand nicht auf eine korrekt formatierte Datenstruktur zeigt, liefert malloc_set_state() -1 zurück. Falls die Implementierung erkennt, dass die Version der Datenstruktur, auf die sich Zustand bezieht, eine neuere ist, als diese Implementierung kennt, dann liefert malloc_set_state() -2 zurück.
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
Schnittstelle | Attribut | Wert |
malloc_get_state(), malloc_set_state() | Multithread-Fähigkeit | MT-Sicher |
STANDARDS
GNU.
ANMERKUNGEN
Diese Funktionen sind nützlich, wenn diese Implementierung von malloc(3) als Teil einer dynamischen Bibliothek verwandt wird und der Inhalt des Heaps mittels einer anderen Methode gespeichert und wiederhergestellt wird. Diese Technik wird von GNU Emacs verwandt, um seine Methode der Funktion »dumping« zu implementieren.
Hook-Funktionszeiger werden durch diese Funktionen niemals gespeichert oder wiederhergestellt. Es gibt aber zwei Ausnahmen: Wenn Malloc-Überprüfung beim Aufruf von malloc_get_state() in Verwendung war (siehe mallopt(3)), dann wird malloc_set_state() die Malloc-Überprüfungs-Hooks falls möglich zurücksetzen; falls Malloc-Überprüfung im aufgezeichneten Zustand nicht in Verwendung war, aber der Aufrufende um Malloc-Überprüfung gebeten hat, dann werden die Hooks auf 0 zurückgesetzt.
SIEHE AUCH
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> 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 die Mailingliste der Übersetzer.
2. Mai 2024 | Linux man-pages 6.9.1 |