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

# PartyManager::StartProcessingStateChanges

> 检索自上次此类调用以来要处理的所有 PartyStateChanges 数组。

检索自上次此类调用以来要处理的所有 PartyStateChanges 数组。

## Syntax

```cpp theme={null}
PartyError StartProcessingStateChanges(  
    uint32_t* stateChangeCount,  
    PartyStateChangeArray* stateChanges  
)  
```

### Parameters

**`stateChangeCount`**   uint32\_t\*\
*output*

在 `stateChanges` 数组中供标题处理的 PartyStateChange 条目的输出数量。

**`stateChanges`**   [PartyStateChangeArray\*](/services/playfab/multiplayer/networking/reference/typedefs)\
*library-allocated output array of size `*stateChangeCount`*

库分配的输出数组，其中包含供标题处理并随后传递给 [FinishProcessingStateChanges()](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_finishprocessingstatechanges) 的所有 PartyStateChange 条目。

### Return value

PartyError

如果调用成功，则返回 `c_partyErrorSuccess`；否则返回错误代码。可通过 [GetErrorMessage()](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_geterrormessage) 检索错误代码的可读形式。

## Remarks

此方法为 Party 库提供与远程设备或服务同步状态的机会，并检索自上次调用此方法以来所有当前可用的更改列表。标题应使用提供的 0 个或多个更改的数组来更新其自己的状态或 UI，然后及时使用它们调用 [FinishProcessingStateChanges()](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_finishprocessingstatechanges)。<br /><br /> 库公开的 Party 库状态可以在此调用期间更改，因此你必须在使用它时保持线程安全。例如，在 UI 线程上调用 StartProcessingStateChanges()，同时单独的辅助线程正在循环访问 [PartyNetwork::GetEndpoints()](/services/playfab/multiplayer/networking/reference/classes/PartyNetwork/methods/partynetwork_getendpoints) 返回的终结点列表，可能会导致崩溃，因为 StartProcessingStateChanges() 可以更改与终结点列表关联的内存。应经常调用 StartProcessingStateChanges() — 每帧图形至少调用一次。它被设计为快速执行和返回，以便可以在主 UI 线程上调用，对性能的影响可以忽略。为获得最佳结果，你还应在调用 FinishProcessingStateChanges() 之前最小化处理状态更改所花费的时间。   <br /><br /> StartProcessingStateChanges() 返回的每个状态更改必须准确地返回到 FinishProcessingStateChanges() 一次，但可以按顺序返回，并且可以与其他 StartProcessingStateChanges() 调用的状态更改交错。与特定状态更改关联的任何资源都保证保持有效，直到该状态更改返回到 FinishProcessingStateChanges()。

## Requirements

**Header:** Party.h

## See also

[PartyManager](/services/playfab/multiplayer/networking/reference/classes/PartyManager/partymanager)\
[PartyStateChange](/services/playfab/multiplayer/networking/reference/structs/partystatechange)\
[PartyManager::FinishProcessingStateChanges](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_finishprocessingstatechanges)


## Related topics

- [PartyManager::FinishProcessingStateChanges](/zh-CN/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_finishprocessingstatechanges.md)
- [PartyStateChange](/zh-CN/services/playfab/multiplayer/networking/reference/structs/partystatechange.md)
- [PartyManager::GetNetworks](/zh-CN/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getnetworks.md)
- [PartyManager::GetChatControls](/zh-CN/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getchatcontrols.md)
- [PartyManager::GetLocalUsers](/zh-CN/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getlocalusers.md)
