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

# XPackageUnregisterInstallationProgressChanged

> XPackageUnregisterInstallationProgressChanged

# XPackageUnregisterInstallationProgressChanged

注销先前注册的安装进度变化回调。

## 语法

```cpp theme={null}
bool XPackageUnregisterInstallationProgressChanged(  
         XPackageInstallationMonitorHandle installationMonitor,  
         XTaskQueueRegistrationToken token,  
         bool wait  
)  
```

### 参数

*installationMonitor*   \_In\_\
类型：XPackageInstallationMonitorHandle

要从中移除指定回调的安装监视器。

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

由 [XPackageRegisterInstallationProgressChanged](/reference/system/xpackage/functions/xpackageregisterinstallationprogresschanged) 返回的令牌。

*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。在该令牌的回调完成后，令牌会自动注销。

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

1. 你可以在注销时阻塞，以确保在调用注销后不会再调用你的回调。
2. 你可以选择不阻塞。若要确保在删除数据之前回调已完成，请定期调用注销并将 *wait* 设为 false。当它最终返回 true 时，你的所有回调都已完成，你就可以删除状态。
3. 如果你的回调不在意是否在注销调用期间被调用，则可以直接为 *wait* 传入 false 并忽略返回值。

示例：

```cpp theme={null}
XPackageUnregisterInstallationProgressChanged(monitor, token, false); 
```

## 要求

**头文件：** XPackage.h

**库：** xgameruntime.lib

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

## 概念文档

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

## 另请参阅

[XPackage](/reference/system/xpackage/xpackage_members)\
[流式安装和智能交付](/build/core-features/common/packaging/overviews/streaming_install-intelligent_delivery)


## Related topics

- [XPackageRegisterInstallationProgressChanged](/zh-CN/reference/system/xpackage/functions/xpackageregisterinstallationprogresschanged.md)
- [XTaskQueueRegistrationToken](/zh-CN/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken.md)
- [XPackage](/zh-CN/reference/system/xpackage/xpackage_members.md)
- [面向 GDK 的 Unity C# API 包装器](/zh-CN/build/gdk-and-engines/unity/unity-api-wrappers.md)
- [XPackageInstallationProgressCallback](/zh-CN/reference/system/xpackage/functions/xpackageinstallationprogresscallback.md)
