Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Unregisters a previously registered XGameStreamingClientPropertiesChangedCallback.
Syntax
bool XGameStreamingUnregisterClientPropertiesChanged(
XGameStreamingClientId client,
XTaskQueueRegistrationToken token,
bool wait
)
Parameters
client _In_
Type: XGameStreamingClientId
The streaming client to unsubscribe to property change notifications from. This ID is typically obtained as a parameter to the XGameStreamingConnectionStateChangedCallback.
token _In\
Type: XTaskQueueRegistrationToken
The registration token provided by XGameStreamingRegisterClientPropertiesChanged for the callback which should no longer be fired.
wait _In_
Type: bool
If wait is set to true, XGameStreamingUnregisterClientPropertiesChanged will not return until both the registration has been revoked and any outstanding callbacks have completed.
If wait is set to false, XGameStreamingUnregisterClientPropertiesChanged will return as soon as the registration has been revoked. Although no new callbacks will be delivered, an in progress callback may still be executing when the function returns.
Return value
Type: bool
Returns true if the unregistration was successful, false if it did not succeed.
Remarks
Note
This function isn't safe to call on a time-sensitive thread. For more information, see Time-sensitive threads.
This API allows the game to stop receiving their XGameStreamingClientPropertiesChangedCallback whenever a XGameStreamingClientProperty, like stream physical dimensions, changes.
Example
// On client disconnection remove from list of client and do per client cleanup
void OnClientDisconnected(XGameStreamingClientId client)
{
StreamingClient connectedClient;
GetConnectedClient(client, &connectedClient);
// unregister the client property changed handler
XGameStreamingUnregisterClientPropertiesChanged(client, connectedClient.propertyChangeToken, true);
std::erase(std::remove(m_streamingClients.begin(), m_streamingClients.end(), connectedClient), m_streamingClients.end());
}
Requirements
Header: xgamestreaming.h
Library: xgameruntime.lib
Supported platforms: Windows, Xbox One family consoles and Xbox Series consoles
See also
XGameStreamingClientProperty XGameStreamingClientPropertiesChangedCallback XGameStreamingRegisterClientPropertiesChanged XGameStreaming