Sintaxe
Parâmetros
stateChangeCount uint32_t*saída O número de saída de entradas PartyStateChange que o título deve tratar na matriz
stateChanges.
stateChanges PartyStateChangeArray*matriz de saída alocada pela biblioteca de tamanho
*stateChangeCount
Uma matriz de saída alocada pela biblioteca de todas as entradas PartyStateChange que o título deve tratar e, em seguida, passar para FinishProcessingStateChanges().
Valor retornado
PartyErrorc_partyErrorSuccess 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 GetErrorMessage().
Comentários
Este método oferece à biblioteca do Party uma 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 seu próprio estado ou interface do usuário e, em seguida, chamar FinishProcessingStateChanges() com elas em tempo hábil.O estado da biblioteca do Party exposto pela biblioteca pode mudar durante esta chamada, portanto, seu uso dele precisa ser thread-safe. Por exemplo, invocar StartProcessingStateChanges() no seu thread de interface do usuário ao mesmo tempo em que um thread de trabalho separado está percorrendo a lista de pontos de extremidade retornada por PartyNetwork::GetEndpoints() pode resultar em falhas, pois StartProcessingStateChanges() pode alterar a memória associada à lista de pontos de extremidade. StartProcessingStateChanges() 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 seu thread principal de interface do usuário com impacto insignificante. Para obter melhores resultados, você também deve minimizar o tempo gasto tratando as alterações de estado antes de chamar FinishProcessingStateChanges().
Cada alteração de estado retornada por StartProcessingStateChanges() deve ser devolvida a FinishProcessingStateChanges() exatamente uma vez, mas pode ser devolvida fora de ordem e intercalada com alterações de estado de outras chamadas a StartProcessingStateChanges(). Há garantia de que todos os recursos associados a uma alteração de estado específica permaneçam válidos até que a alteração de estado seja devolvida a FinishProcessingStateChanges().
Requisitos
Cabeçalho: Party.hConfira também
PartyManagerPartyStateChange
PartyManager::FinishProcessingStateChanges
