Sintaxis
Parámetros
handle PFMultiplayerHandle
El identificador de la instancia de la API de PFMultiplayer.
stateChangeCount uint32_t*output El número de salida de entradas de PFLobbyStateChange que el título debe controlar en la matriz
stateChanges.
stateChanges PFLobbyStateChange* const**library-allocated output array of size
*stateChangeCount
Una matriz de salida asignada por la biblioteca con todas las entradas de PFLobbyStateChange que el título debe controlar y, después, pasar a PFMultiplayerFinishProcessingLobbyStateChanges().
Valor devuelto
Tipo: HRESULTS_OK si la llamada se realizó correctamente o un código de error en caso contrario. La forma legible del código de error se puede recuperar mediante PFMultiplayerGetErrorMessage().
Comentarios
Este método proporciona a la biblioteca de Lobby la oportunidad de sincronizar el estado con dispositivos o servicios remotos, y recupera una lista de todos los cambios disponibles actualmente para el título desde la última llamada a este método. El título debe usar la matriz proporcionada de 0 o más cambios para actualizar su propio estado o interfaz de usuario y, después, llamar a PFMultiplayerFinishProcessingLobbyStateChanges() con ellos de manera oportuna.El estado de la biblioteca de Lobby expuesto por la biblioteca puede cambiar durante esta llamada, por lo que su uso debe ser seguro para subprocesos. Por ejemplo, invocar PFMultiplayerStartProcessingLobbyStateChanges() en el subproceso de la interfaz de usuario al mismo tiempo que un subproceso de trabajo independiente recorre en bucle la lista de miembros del lobby devuelta por PFLobbyGetMembers() puede provocar bloqueos, porque PFMultiplayerStartProcessingLobbyStateChanges() puede alterar la memoria asociada a la lista de miembros. Se debe llamar a PFMultiplayerStartProcessingLobbyStateChanges() con frecuencia, al menos una vez por fotograma gráfico. Está diseñado para ejecutarse y devolver el control rápidamente, de modo que se pueda llamar en el subproceso principal de la interfaz de usuario con un impacto insignificante. Para obtener los mejores resultados, también debe minimizar el tiempo que dedica a controlar los cambios de estado antes de llamar a PFMultiplayerFinishProcessingLobbyStateChanges().
Cada cambio de estado devuelto por PFMultiplayerStartProcessingLobbyStateChanges() debe devolverse a PFMultiplayerFinishProcessingLobbyStateChanges() exactamente una vez, pero puede devolverse desordenado y puede intercalarse con cambios de estado de otras llamadas a PFMultiplayerStartProcessingLobbyStateChanges(). Se garantiza que los recursos asociados a un cambio de estado específico permanecerán válidos hasta que el cambio de estado se devuelva a PFMultiplayerFinishProcessingLobbyStateChanges().
Requisitos
Encabezado: PFLobby.hConsulte también
Miembros de PFLobbyPFLobbyStateChange
PFMultiplayerFinishProcessingLobbyStateChanges
