.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 2012 by Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH malloc_get_state 3 "20 juillet 2023" "Pages du manuel de Linux 6.05.01" .SH NOM malloc_get_state, malloc_set_state \- Sauvegarder et restaurer l'état de l'implémentation de malloc .SH BIBLIOTHÈQUE Bibliothèque C standard (\fIlibc\fP, \fI\-lc\fP) .SH SYNOPSIS .nf \fB#include \fP .PP \fBvoid *malloc_get_state(void);\fP \fBint malloc_set_state(void *\fP\fIstate\fP\fB);\fP .fi .SH DESCRIPTION \fINote\fP\ : ces fonctions sont supprimées dans la glibc\ 2.25. .PP La fonction \fBmalloc_get_state\fP() sauvegarde l'état actuel de toutes les variables servant à la gestion interne de \fBmalloc\fP(3) (mais pas le contenu du tas ou l'état des pointeurs de fonctions \fBmalloc_hook\fP(3)). L'état est enregistré dans une structure de données opaque dépendante du système, allouée dynamiquement par \fBmalloc\fP(3), et un pointeur vers cette structure de données est renvoyé comme valeur de résultat de la fonction (il est de la responsabilité de celui qui appelle cette fonction de libérer cette zone mémoire avec \fBfree\fP(3)). .PP La fonction \fBmalloc_set_state\fP() restaure l'état de toutes les variables servant à la gestion interne de \fBmalloc\fP(3) en recopiant celles se trouvant dans la structure de données opaque pointée par \fIstate\fP. .SH "VALEUR RENVOYÉE" En cas de succès, \fBmalloc_get_state\fP() renvoie un pointeur vers une structure de données opaque nouvellement créée. En cas d'erreur (par exemple quand la zone mémoire pour la structure de données n'a pu être allouée), il renvoie NULL. .PP .\" if(ms->magic != MALLOC_STATE_MAGIC) return -1; .\" /* Must fail if the major version is too high. */ .\" if((ms->version & ~0xffl) > (MALLOC_STATE_VERSION & ~0xffl)) return -2; En cas de succès, \fBmalloc_set_state\fP() renvoie \fB0\fP. Si l'implémentation détecte que \fIstate\fP ne pointe pas vers une structure de données ayant une forme valable, \fBmalloc_set_state\fP() renvoie \fB\-1\fP. Si l'implémentation détecte que la version de la structure de données référencée par \fIstate\fP est une plus récente que celle connue par l'implémentation, \fBmalloc_set_state\fP() renvoie \fB\-2\fP. .SH ATTRIBUTS Pour une explication des termes utilisés dans cette section, consulter \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Interface Attribut Valeur T{ .na .nh \fBmalloc_get_state\fP(), \fBmalloc_set_state\fP() T} Sécurité des threads MT\-Safe .TE .sp 1 .SH STANDARDS GNU. .SH NOTES Ces fonctions sont utiles lorsque cette implémentation de \fBmalloc\fP(3) fait partie d'une bibliothèque partagée et quand le contenu du tas est sauvegardé et restauré par un autre mécanisme. Cette technique est utilisée par GNU Emacs pour implémenter sa fonction «\ dumping\ ». .PP .\" i.e., calls __malloc_check_init() .\" i.e., malloc checking is not already in use .\" and the caller requested malloc checking Les pointeurs de fonction crochet ne sont jamais sauvegardés ou restaurés par ces fonctions, avec deux exceptions\ : si la vérification de \fBmalloc\fP() (voir \fBmallopt\fP(3)) était active lorsque \fBmalloc_get_state\fP() a été appelée, alors \fBmalloc_set_state\fP() réinitialise si possible les fonctions crochets de \fBmalloc\fP()\ ; si cette vérification n'était pas utilisée dans l'état sauvegardé, mais que l'appelant l’a demandée, alors les fonctions crochets sont mises à zéro. .SH "VOIR AUSSI" \fBmalloc\fP(3), \fBmallopt\fP(3) .PP .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier , David Prévot et Grégoire Scano . .PP Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. .PP Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .