> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PFMemFreeFunction

> Rappel que PlayFab appelle pour libérer une mémoire tampon non null allouée par le rappel PFMemAllocFunction du titre, lorsque PlayFab n'en a plus besoin.

Rappel que PlayFab appelle chaque fois qu'une mémoire tampon qu'il a allouée n'est plus nécessaire et peut être libérée.

## Syntaxe

```cpp theme={null}
void STDAPIVCALLTYPE PFMemFreeFunction(
    void* pointer,
    uint32_t memoryTypeId
);
```

### Paramètres

**`pointer`**   `_In_ _Post_invalid_` void\*

Pointeur vers la mémoire tampon allouée par votre rappel [PFMemAllocFunction](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/functions/pfmemallocfunction.md). Cette valeur n'est jamais `nullptr`. Le pointeur n'est plus valide après le retour du rappel.

**`memoryTypeId`**   `_In_` uint32\_t

Identificateur opaque de la catégorie interne de la mémoire libérée. Ignorez cette valeur.

### Valeur de retour

Type : void

## Notes

Pour installer ce rappel, définissez-le dans le membre `free` d'une structure [PFMemoryHooks](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/structs/pfmemoryhooks.md) et passez la structure à [PFMemSetFunctions](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/functions/pfmemsetfunctions.md) avant d'appeler [PFInitialize](https://docs.xbox.com/fr/services/playfab/api-references/c/pfcore/functions/pfinitialize.md). Définissez en même temps le membre `alloc` sur un rappel PFMemAllocFunction correspondant. PFMemSetFunctions retourne `E_INVALIDARG` si un seul des deux membres est défini.

PlayFab appelle ce rappel lorsqu'il a fini d'utiliser une mémoire tampon retournée par votre rappel PFMemAllocFunction, afin que vous puissiez libérer cette mémoire tampon. PlayFab n'appelle pas ce rappel avec `nullptr`.

Si libHttpClient n'est pas encore initialisé lorsque vous appelez PFMemSetFunctions, PlayFab installe également des hooks qui font passer les libérations de mémoire de libHttpClient par ce rappel.

PlayFab peut appeler ce rappel à partir de différents threads ; il doit donc être thread-safe.

## Configuration requise

**En-tête :** PFPlatform.h

**Bibliothèque :** PlayFabCore.lib

**Plateformes prises en charge :** Windows, consoles de la famille XBOX One et consoles XBOX Series

## Voir aussi

[Membres de PFPlatform](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/pfplatform_members.md)

[PFMemoryHooks](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/structs/pfmemoryhooks.md)

[PFMemAllocFunction](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/functions/pfmemallocfunction.md)


## Related topics

- [PFMemAllocFunction](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/functions/pfmemallocfunction.md)
- [PFMemoryHooks](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/structs/pfmemoryhooks.md)
- [Vue d'ensemble de l'API C Services - PFPlatform.h](https://docs.xbox.com/fr/services/playfab/api-references/c/pfplatform/pfplatform_members.md)
- [HCMemFreeFunction](https://docs.xbox.com/fr/reference/live/httpclient/httpclient/functions/hcmemfreefunction.md)
- [XblMemFreeFunction](https://docs.xbox.com/fr/reference/live/xsapi-c/xbox_live_global_c/functions/xblmemfreefunction.md)
