> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XGameStreamingUnregisterClientPropertiesChanged

> XGameStreamingUnregisterClientPropertiesChanged

# XGameStreamingUnregisterClientPropertiesChanged

取消注册先前注册的 [XGameStreamingClientPropertiesChangedCallback](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/functions/xgamestreamingclientpropertieschangedcallback.md)。

## 语法

```cpp theme={null}
bool XGameStreamingUnregisterClientPropertiesChanged(
         XGameStreamingClientId client,
         XTaskQueueRegistrationToken token,
         bool wait
)
```

### 参数

*client*   \_In\_\
类型：XGameStreamingClientId

要取消订阅属性更改通知的流式处理客户端。此 ID 通常作为 [XGameStreamingConnectionStateChangedCallback](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/functions/xgamestreamingconnectionstatechangedcallback.md) 的参数获得。

*token*   \_In\\\
类型：XTaskQueueRegistrationToken

由 [XGameStreamingRegisterClientPropertiesChanged](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/functions/xgamestreamingregisterclientpropertieschanged.md) 为不应再触发的回调提供的注册令牌。

*wait*   \_In\_\
类型：bool

如果 `wait` 设置为 true，则 `XGameStreamingUnregisterClientPropertiesChanged` 在注册被撤销并且任何未完成的回调完成之前不会返回。

如果 `wait` 设置为 false，则 `XGameStreamingUnregisterClientPropertiesChanged` 将在注册被撤销后立即返回。虽然不会传递新的回调，但当函数返回时正在进行中的回调可能仍在执行。

### 返回值

类型：bool

如果取消注册成功则返回 true，如果未成功则返回 false。

## 备注

> [!NOTE]
>
> 此函数在时间敏感线程上调用不安全。有关详细信息，请参阅[时间敏感线程](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)。

此 API 允许游戏在 [XGameStreamingClientProperty](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/enums/xgamestreamingclientproperty.md)（如流物理尺寸）更改时停止接收其 `XGameStreamingClientPropertiesChangedCallback`。

## 示例

```cpp theme={null}
    // 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());
    }

```

## 要求

**标头：** xgamestreaming.h

**库：** xgameruntime.lib

**支持的平台：** Windows、XBOX One 系列主机和 XBOX Series 主机

## 概念文档

* [时间敏感线程](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## 另请参阅

[XGameStreamingClientProperty](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/enums/xgamestreamingclientproperty.md)
[XGameStreamingClientPropertiesChangedCallback](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/functions/xgamestreamingclientpropertieschangedcallback.md)
[XGameStreamingRegisterClientPropertiesChanged](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/functions/xgamestreamingregisterclientpropertieschanged.md)
[XGameStreaming](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/xgamestreaming_members.md)


## Related topics

- [XGameStreamingRegisterClientPropertiesChanged](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/functions/xgamestreamingregisterclientpropertieschanged.md)
- [XGameStreamingClientPropertiesChangedCallback](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/functions/xgamestreamingclientpropertieschangedcallback.md)
- [XGameStreamingClientProperty](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/enums/xgamestreamingclientproperty.md)
- [XGameStreaming（API 内容）](https://docs.xbox.com/zh-CN/reference/system/xgamestreaming/xgamestreaming_members.md)
- [在 Unity 项目中使用 GDK API 的 C# 包装器](https://docs.xbox.com/zh-CN/build/gdk-and-engines/unity/unity-api-wrappers.md)
