Sintaxe
Parâmetros
handle PFMultiplayerHandle
O identificador da instância da API PFMultiplayer.
stateChangeCount uint32_t*saída O número de saída de entradas PFLobbyStateChange que o título deve tratar na matriz
stateChanges.
stateChanges PFLobbyStateChange* const**matriz de saída alocada pela biblioteca de tamanho
*stateChangeCount
Uma matriz de saída alocada pela biblioteca de todas as entradas PFLobbyStateChange que o título deve tratar e depois passar para PFMultiplayerFinishProcessingLobbyStateChanges().
Valor retornado
Tipo: HRESULTS_OK se a chamada tiver êxito ou um código de erro caso contrário. A forma legível do código de erro pode ser obtida por meio de PFMultiplayerGetErrorMessage().
Comentários
Este método oferece à biblioteca do Lobby a oportunidade de sincronizar o estado com dispositivos ou serviços remotos e recupera uma lista de todas as alterações disponíveis no momento para o título desde a última chamada a este método. O título deve usar a matriz fornecida de 0 ou mais alterações para atualizar o próprio estado ou a interface do usuário e, em seguida, chamar PFMultiplayerFinishProcessingLobbyStateChanges() com elas em tempo hábil.O estado da biblioteca do Lobby exposto pela biblioteca pode mudar durante esta chamada, portanto você precisa usá-lo de forma thread-safe. Por exemplo, invocar PFMultiplayerStartProcessingLobbyStateChanges() no thread da interface do usuário ao mesmo tempo em que um thread de trabalho separado percorre a lista de membros do lobby retornada por PFLobbyGetMembers() pode resultar em falhas, pois PFMultiplayerStartProcessingLobbyStateChanges() pode alterar a memória associada à lista de membros. PFMultiplayerStartProcessingLobbyStateChanges() deve ser chamado com frequência, pelo menos uma vez por quadro gráfico. Ele foi projetado para ser executado e retornar rapidamente, de modo que possa ser chamado no thread principal da interface do usuário com impacto insignificante. Para obter melhores resultados, você também deve minimizar o tempo gasto no tratamento das alterações de estado antes de chamar PFMultiplayerFinishProcessingLobbyStateChanges().
Cada alteração de estado retornada por PFMultiplayerStartProcessingLobbyStateChanges() precisa ser devolvida a PFMultiplayerFinishProcessingLobbyStateChanges() exatamente uma vez, mas pode ser devolvida fora de ordem e intercalada com alterações de estado de outras chamadas a PFMultiplayerStartProcessingLobbyStateChanges(). É garantido que quaisquer recursos associados a uma alteração de estado específica permaneçam válidos até que a alteração de estado seja devolvida a PFMultiplayerFinishProcessingLobbyStateChanges().
Requisitos
Cabeçalho: PFLobby.hConfira também
Membros do PFLobbyPFLobbyStateChange PFMultiplayerFinishProcessingLobbyStateChanges
