개요
PlayFab Unified SDK는 사용자 지정 할당 후크, 명시적 리소스 정리, 안전한 비동기 작업 처리를 지원하여 개발자에게 메모리 사용에 대한 정확한 제어를 제공합니다. 따라서 게임 및 임베디드 플랫폼과 같은 고성능 또는 리소스가 제한된 환경에 적합합니다.사용자 지정 메모리 할당
SDK를 사용하면PFMemoryHooks를 사용하여 사용자 지정 메모리 할당 및 해제 함수를 정의할 수 있습니다. 이를 통해 SDK를 아레나, 풀 또는 플랫폼별 할당자와 같은 기존 메모리 관리 시스템에 통합할 수 있습니다.
사용자 지정 메모리 후크 설정
- 후크는
PFServicesInitialize를 호출하기 전에 설정해야 합니다. - SDK가 초기화되면 변경할 수 없습니다.
- 설정되지 않은 경우 SDK는 기본 할당(
malloc/free)을 사용합니다.
비동기 작업
SDK의 대부분의 API 호출은 비동기입니다. 각 비동기 호출은 요청 기간 동안 유효한 상태로 유지되어야 하는 유효한XAsyncBlock이 필요합니다.
XAsyncBlock을 안전하게 사용
- 수명을 보장할 수 없는 한
XAsyncBlock을 스택에 할당하지 마세요. - 동적으로 할당된 경우 소유권을 해제하고 콜백에서 정리하세요.
- 람다에서 무효화된 참조나 포인터를 캡처하지 마세요.
리소스 정리
SDK는 더 이상 필요하지 않을 때 명시적으로 닫아야 하는 핸들(예:PFEntityHandle, PFServiceConfigHandle)을 사용합니다.
핸들 닫기 및 초기화 해제
- 누수를 방지하기 위해 항상 PlayFab 핸들을 닫으세요.
- 종료하기 전에
PFServicesUninitializeAsync가 완료될 때까지 기다리세요.
모범 사례
- 메모리 후크를 조기에 설정: 다른 PlayFab API 호출 전에.
- 메모리 누수 방지: 핸들을 닫고 비동기 리소스를 신중하게 관리하세요.
- 메모리 프로파일러 사용: 특히 메모리 예산이 빡빡한 플랫폼에서.
- 풀링된 할당자 사용: 성능이 중요하거나 빈번한 할당을 위해.
