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

Syntax

Parameters

stateChangeCount   uint32_t*
output
stateChanges 数组中供标题处理的 PartyStateChange 条目的输出数量。 stateChanges   PartyStateChangeArray*
library-allocated output array of size *stateChangeCount
库分配的输出数组,其中包含供标题处理并随后传递给 FinishProcessingStateChanges() 的所有 PartyStateChange 条目。

Return value

PartyError 如果调用成功,则返回 c_partyErrorSuccess;否则返回错误代码。可通过 GetErrorMessage() 检索错误代码的可读形式。

Remarks

此方法为 Party 库提供与远程设备或服务同步状态的机会,并检索自上次调用此方法以来所有当前可用的更改列表。标题应使用提供的 0 个或多个更改的数组来更新其自己的状态或 UI,然后及时使用它们调用 FinishProcessingStateChanges()

库公开的 Party 库状态可以在此调用期间更改,因此你必须在使用它时保持线程安全。例如,在 UI 线程上调用 StartProcessingStateChanges(),同时单独的辅助线程正在循环访问 PartyNetwork::GetEndpoints() 返回的终结点列表,可能会导致崩溃,因为 StartProcessingStateChanges() 可以更改与终结点列表关联的内存。应经常调用 StartProcessingStateChanges() — 每帧图形至少调用一次。它被设计为快速执行和返回,以便可以在主 UI 线程上调用,对性能的影响可以忽略。为获得最佳结果,你还应在调用 FinishProcessingStateChanges() 之前最小化处理状态更改所花费的时间。

StartProcessingStateChanges() 返回的每个状态更改必须准确地返回到 FinishProcessingStateChanges() 一次,但可以按顺序返回,并且可以与其他 StartProcessingStateChanges() 调用的状态更改交错。与特定状态更改关联的任何资源都保证保持有效,直到该状态更改返回到 FinishProcessingStateChanges()。

Requirements

Header: Party.h

See also

PartyManager
PartyStateChange
PartyManager::FinishProcessingStateChanges
最后修改于 2026年8月13日