Pular para o conteúdo principal
Este guia explica como a memória é gerenciada no SDK unificado do PlayFab, incluindo opções de personalização e práticas recomendadas para evitar vazamentos de memória e garantir o tratamento seguro de operações assíncronas.

Visão geral

O SDK unificado do PlayFab dá aos desenvolvedores controle preciso sobre o uso de memória, oferecendo suporte a hooks de alocação personalizados, limpeza explícita de recursos e tratamento seguro de operações assíncronas. Isso o torna adequado para ambientes de alto desempenho ou com recursos limitados, como jogos e plataformas embarcadas.

Alocação de memória personalizada

O SDK permite definir funções personalizadas de alocação e desalocação de memória usando PFMemoryHooks. Isso permite integrar o SDK aos seus sistemas de gerenciamento de memória existentes, como arenas, pools ou alocadores específicos da plataforma.

Definindo hooks de memória personalizados

Observações:
  • Os hooks precisam ser definidos antes de chamar PFServicesInitialize.
  • Eles não podem ser alterados depois que o SDK é inicializado.
  • Se não forem definidos, o SDK usará a alocação padrão (malloc/free).

Operações assíncronas

A maioria das chamadas à API no SDK é assíncrona. Cada chamada assíncrona exige um XAsyncBlock válido, que precisa permanecer ativo durante toda a requisição.

Usando o XAsyncBlock com segurança

Práticas recomendadas:
  • Não aloque o XAsyncBlock na pilha, a menos que possa garantir seu tempo de vida.
  • Libere a propriedade se ele for alocado dinamicamente e faça a limpeza no callback.
  • Evite capturar referências ou ponteiros invalidados na lambda.

Limpeza de recursos

O SDK usa identificadores (por exemplo, PFEntityHandle, PFServiceConfigHandle) que precisam ser fechados explicitamente quando não forem mais necessários.

Fechando identificadores e desinicializando

Importante:
  • Sempre feche os identificadores do PlayFab para evitar vazamentos.
  • Aguarde a conclusão de PFServicesUninitializeAsync antes de encerrar.

Práticas recomendadas

  • Defina os hooks de memória cedo: antes de qualquer outra chamada à API do PlayFab.
  • Evite vazamentos de memória: feche os identificadores e gerencie os recursos assíncronos com cuidado.
  • Use criadores de perfil de memória: especialmente em plataformas com orçamentos de memória apertados.
  • Use alocadores em pool: para alocações frequentes ou críticas para o desempenho.

Confira também

Última modificação em 8 de outubro de 2026