System.SysReallocMem
Delphi
function SysReallocMem(P: Pointer; Size: NativeInt): Pointer;
C++
extern DELPHI_PACKAGE void * __fastcall SysReallocMem(void * P, NativeInt Size);
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
function | public | GETMEM.INC System.hpp |
System | System |
Description
Renvoie un pointeur sur le nombre d'octets spécifié, préservant les valeurs pointées par le paramètre Pointer
.
Lorsque vous implémentez un gestionnaire de mémoire personnel, utilisez SysReallocMem pour changer la taille d'un bloc mémoire alloué dynamiquement. Si SysReallocMem ne peut pas augmenter le bloc de mémoire pointé par P, elle libère la mémoire référencée et copie les valeurs dans la mémoire nouvellement allouée qui est renvoyée. Si Size
est moindre que le nombre d'octets pointés par by P
, seuls les Size premiers octets sont préservés. Sinon, la valeur entière de la zone mémoire pointée par P est copiée dans la nouvelle zone mémoire.
Remarque : L'unité System fournit une implémentation limitée de SysReallocMem. Si le gestionnaire de mémoire personnalisé doit prendre en charge le décompte de références et les objets qui peuvent être partagés entre les processus, utilisez l'implémentation de SysReallocMem fournie par l'unité ShareMem. Le cas échéant, ShareMem doit être la première unité du fichier projet pour mettre en application un modèle cohérent de gestion de la mémoire.
Avertissement : C'est une fonction interne qui ne doit pas être appelée directement par une application. Utilisez à la place la fonction ReallocMem.