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

# XNetworkingUnregisterConnectivityHintChanged

> XNetworkingUnregisterConnectivityHintChanged

# XNetworkingUnregisterConnectivityHintChanged

取消注册通过 [XNetworkingRegisterConnectivityHintChanged](/reference/networking/xnetworking/functions/xnetworkingregisterconnectivityhintchanged) 注册的回调函数。

## 语法

```cpp theme={null}
bool XNetworkingUnregisterConnectivityHintChanged(
         XTaskQueueRegistrationToken token,
         bool wait
)
```

### 参数

*token*   \_In\_\
类型：[XTaskQueueRegistrationToken](/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken)

从 [XNetworkingRegisterConnectivityHintChanged](/reference/networking/xnetworking/functions/xnetworkingregisterconnectivityhintchanged) 返回的令牌。

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

指示是否阻塞直到所有挂起的回调完成。

### 返回值

类型：bool

如果 *wait* 为 false 且取消注册调用处于挂起状态，则返回 false。否则返回 true。

## 备注

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

此函数执行以下操作：

* 从已注册的回调集合中移除与该令牌相关联的回调。
* 如果没有针对该回调令牌正在执行的回调，则该调用返回 true。
* 如果有回调正在执行且 *wait* 为 true，则该调用阻塞，直到正在执行的回调完成。
* 如果有回调正在执行且 *wait* 为 false，则该调用不阻塞，但会返回 false。当该令牌的回调完成后，令牌将被自动取消注册。

<Note>如果 *wait* 为 true，则不应在 [XNetworkingConnectivityHintChangedCallback](/reference/networking/xnetworking/functions/xnetworkingconnectivityhintchangedcallback) 内部调用此函数，否则会导致死锁。</Note>

此机制允许以下编码模式：

* 你可以在取消注册时进行阻塞，以确保在取消注册调用之后不再调用你的回调。
* 你可以选择不阻塞。如果你需要在删除数据之前确保回调已完成，则可以定期以 *wait* 为 false 调用此函数。当它最终返回 true 时，你的所有回调都已完成，你就可以删除状态了。
* 如果你的回调不关心它是否在取消注册调用期间被调用，则可以为 *wait* 传入 false 并忽略返回值。

## 要求

**头文件：** XNetworking.h

**库：** xgameruntime.lib

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

## 概念文档

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

## 另请参阅

[XNetworkingRegisterConnectivityHintChanged](/reference/networking/xnetworking/functions/xnetworkingregisterconnectivityhintchanged)\
[XNetworkingGetConnectivityHint](/reference/networking/xnetworking/functions/xnetworkinggetconnectivityhint)\
[网络初始化和连接](/build/console-features/networking/initialization-connectivity-networking)\
[XNetworking](/reference/networking/xnetworking/xnetworking_members)


## Related topics

- [XNetworkingRegisterConnectivityHintChanged](/zh-CN/reference/networking/xnetworking/functions/xnetworkingregisterconnectivityhintchanged.md)
- [XNetworkingConnectivityHintChangedCallback](/zh-CN/reference/networking/xnetworking/functions/xnetworkingconnectivityhintchangedcallback.md)
- [XNetworkingGetConnectivityHint](/zh-CN/reference/networking/xnetworking/functions/xnetworkinggetconnectivityhint.md)
- [检测网络初始化状态](/zh-CN/build/console-features/networking/initialization-connectivity-networking.md)
- [XTaskQueueRegistrationToken](/zh-CN/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken.md)
