> ## 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

> PlayFab 在不再需要由遊戲之 PFMemAllocFunction 回呼所配置的非 Null 記憶體緩衝區之後，呼叫以釋放該緩衝區的回呼。

每當 PlayFab 所配置的記憶體緩衝區不再需要且可以釋放時，PlayFab 所呼叫的回呼。

## 語法

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

### 參數

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

指向您的 [PFMemAllocFunction](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfplatform/functions/pfmemallocfunction.md) 回呼所配置之記憶體緩衝區的指標。此值絕不會是 `nullptr`。回呼傳回之後，此指標即不再有效。

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

所釋放記憶體之內部類別的不透明識別碼。請忽略此值。

### 傳回值

類型：void

## 備註

若要安裝此回呼，請在 [PFMemoryHooks](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfplatform/structs/pfmemoryhooks.md) 結構的 `free` 成員中設定它，並在呼叫 [PFInitialize](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfcore/functions/pfinitialize.md) 之前，將該結構傳遞給 [PFMemSetFunctions](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfplatform/functions/pfmemsetfunctions.md)。同時將 `alloc` 成員設定為對應的 PFMemAllocFunction 回呼。如果只設定這兩個成員之一，PFMemSetFunctions 會傳回 `E_INVALIDARG`。

當 PlayFab 使用完您的 PFMemAllocFunction 回呼所傳回的記憶體緩衝區時，會呼叫此回呼，讓您可以釋放該緩衝區。PlayFab 不會以 `nullptr` 呼叫此回呼。

如果您呼叫 PFMemSetFunctions 時 libHttpClient 尚未初始化，PlayFab 也會安裝攔截，將 libHttpClient 的釋放作業路由至此回呼。

PlayFab 可能會從不同的執行緒呼叫此回呼，因此請讓它具備執行緒安全。

## 需求

**標頭：** PFPlatform.h

**程式庫：** PlayFabCore.lib

**支援的平台：** Windows、XBOX One 系列主機與 XBOX Series 主機

## 另請參閱

[PFPlatform 成員](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfplatform/pfplatform_members.md)

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

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


## Related topics

- [PFMemAllocFunction](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfplatform/functions/pfmemallocfunction.md)
- [PFMemoryHooks](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfplatform/structs/pfmemoryhooks.md)
- [HCMemFreeFunction](https://docs.xbox.com/zh-TW/reference/live/httpclient/httpclient/functions/hcmemfreefunction.md)
- [XblMemFreeFunction](https://docs.xbox.com/zh-TW/reference/live/xsapi-c/xbox_live_global_c/functions/xblmemfreefunction.md)
- [HCMemAllocFunction](https://docs.xbox.com/zh-TW/reference/live/httpclient/httpclient/functions/hcmemallocfunction.md)
