> ## 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.

# chat_manager::start_processing_state_changes

> chat_manager::start_processing_state_changes

# chat\_manager::start\_processing\_state\_changes

Recupera uma matriz de todas as alterações de estado do Game Chat a serem processadas desde a última chamada desse tipo.

## Sintaxe

```cpp theme={null}
void start_processing_state_changes(  
    uint32_t* stateChangeCount,  
    game_chat_state_change_array* stateChanges  
)  
```

### Parâmetros

*stateChangeCount*   \_Out\_<br />Tipo: uint32\_t\*

Um local para gravar o número de entradas game\_chat\_state\_change que o aplicativo deve tratar na matriz *stateChanges*.

*stateChanges*   \_Outptr\_result\_buffer\_(\*stateChangeCount)<br />Tipo: game\_chat\_state\_change\_array\*

Um local para armazenar um ponteiro para a matriz de todas as entradas game\_chat\_state\_change que o aplicativo deve tratar e, em seguida, passar para chat\_manager::finish\_processing\_state\_changes().

### Valor retornado

Tipo: void

## Comentários

Este método fornece uma lista de todas as alterações disponíveis no momento para o aplicativo desde a última chamada a este método. O aplicativo 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 chat\_manager::finish\_processing\_state\_changes() com elas em tempo hábil.

Se você chamar chat\_manager::start\_processing\_state\_changes() novamente sem ter chamado chat\_manager::finish\_processing\_state\_changes() na lista de objetos de alteração de estado retornada por uma chamada anterior, este método gerará uma exceção. Você sempre deve chamar chat\_manager::finish\_processing\_state\_changes() com os valores retornados por chat\_manager::start\_processing\_state\_changes(), mesmo que ele retorne 0 entradas de alteração de estado.

Depois que chat\_manager::start\_processing\_state\_changes() tiver sido chamado, chat\_manager::remove\_user() não deve ser chamado até depois da chamada correspondente a chat\_manager::finish\_processing\_state\_changes(). Chamar chat\_manager::remove\_user() enquanto as alterações de estado estão sendo processadas invalidará a memória associada ao usuário removido, mesmo que um ponteiro para a memória associada a esse usuário tenha sido retornado em uma alteração de estado.

## Requisitos

**Cabeçalho:** GameChat2.h

**Plataformas com suporte:** Windows, consoles da família XBOX One e consoles XBOX Series

## Confira também

[chat\_manager](/pt-BR/reference/chat/gamechat2/classes/chat_manager/chat_manager)<br />[game\_chat\_state\_change](/pt-BR/reference/chat/gamechat2/structs/game_chat_state_change)<br />[game\_chat\_state\_change\_array](/pt-BR/reference/chat/gamechat2/structs/game_chat_state_change)<br />[chat\_manager::finish\_processing\_state\_changes](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_finish_processing_state_changes)<br />[chat\_manager::remove\_user](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_remove_user)


## Related topics

- [chat_manager::finish_processing_state_changes](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_finish_processing_state_changes.md)
- [game_chat_state_change](/pt-BR/reference/chat/gamechat2/structs/game_chat_state_change.md)
- [chat_manager::remove_user](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_remove_user.md)
- [game_chat_state_change_type](/pt-BR/reference/chat/gamechat2/enums/game_chat_state_change_type.md)
- [Usando a API C++ do Game Chat 2](/pt-BR/services/xbox-services/multiplayer/chat/game-chat2/using-game-chat-2.md)
