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

# PIXRecordMemoryFreeEvent

> PIXRecordMemoryFreeEvent

# PIXRecordMemoryFreeEvent

Registra um evento de liberação de memória.

## Sintaxe

```cpp theme={null}
void PIXRecordMemoryFreeEvent(  
         USHORT allocatorId,  
         void* baseAddress,  
         size_t size,  
         UINT64 metadata  
)  
```

### Parâmetros

*allocatorId*   <br />Tipo: USHORT

Uma ID que você pode usar para identificar grupos de alocações de memória no criador de perfil de memória. Por exemplo, se você tiver heaps diferentes para itens como gráficos, áudio e física, poderá atribuir a cada uma dessas categorias um allocatorID diferente, para que sejam fáceis de identificar ao exibir uma captura de memória no PIX.

*baseAddress*   <br />Tipo: void\*

O endereço inicial da memória que foi liberada.

*size*   <br />Tipo: size\_t

O tamanho, em bytes, da memória que foi liberada.

*metadata*   <br />Tipo: UINT64

Um inteiro sem sinal de 64 bits que você pode usar para marcar uma liberação de memória com dados adicionais. Esses dados extras são exibidos no PIX em uma coluna UserData. Você pode usar esses dados extras para identificar o tipo de objeto do seu título que foi liberado em determinado local de memória, por exemplo. O valor passado para `PIXRecordMemoryFreeEvent` não precisa corresponder ao valor passado para a chamada correspondente a [PIXRecordMemoryAllocationEvent](/pt-BR/reference/tools/pix3/functions/pixrecordmemoryallocationevent).

### Valor retornado

Tipo: void

## Comentários

Um evento de rastreamento de memória do PIX fornece os dados de que o PIX precisa para exibir informações sobre todas as alocações e liberações de memória feitas pelos alocadores de memória personalizados do título em capturas de criação de perfil de memória. Ao fornecer esses dados, o PIX mostrará, para seus alocadores personalizados, os mesmos dados que mostra para chamadas a `VirtualAlloc/VirtualFree` e `HeapAlloc/HeapFree`.

O PIX usa os parâmetros *baseAddress* e *size* para localizar a alocação correspondente da seguinte maneira: se *baseAddress* corresponder ao *baseAddress* passado para a chamada correspondente a [PIXRecordMemoryAllocationEvent](/pt-BR/reference/tools/pix3/functions/pixrecordmemoryallocationevent), o PIX associará a alocação e a liberação simplesmente comparando os endereços. Nesse caso, 0 pode ser passado para o parâmetro *size*. Se *baseAddress* for diferente do valor especificado na alocação correspondente, o parâmetro *size* deverá ser especificado como diferente de zero. Nesse caso, o PIX encontrará as alocações correspondentes usando *baseAddress* e *size*.

Se houver um grande número de eventos ocorrendo ao mesmo tempo ou se o sistema estiver sob carga pesada, eventos de memória poderão ser perdidos pelo Rastreamento de Eventos para Windows (ETW). A perda de eventos resultará em uma análise incompleta dos dados. A interface do usuário de captura de memória do PIX exibirá um aviso indicando a perda de eventos.

## Requisitos

**Cabeçalho:** pixmemory.h

**Biblioteca:** pixevt.lib

**Plataformas compatíveis:** consoles da família XBOX One e consoles XBOX Series

## Documentação conceitual

* [Lista de verificação de engajamento de sistemas do ATG](/pt-BR/build/atg-engagement/atg-systems-engagement)

## Confira também

[Alocadores de memória personalizados do PIX (tópico sob NDA)](/pt-BR/tools/tools-console/pix/pix-custom-memory-allocators) [Referência da API do PIX](/pt-BR/reference/tools/pix3/pix3_members)<br />[PIXRecordMemoryAllocationEvent](/pt-BR/reference/tools/pix3/functions/pixrecordmemoryallocationevent)<br />[PIX (tópico sob NDA)](/pt-BR/tools/tools-console/pix/pix)


## Related topics

- [PIXRecordMemoryFreeEvent](/reference/tools/pix3/functions/pixrecordmemoryfreeevent.md)
- [PIXRecordMemoryAllocationEvent](/reference/tools/pix3/functions/pixrecordmemoryallocationevent.md)
