> ## 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](/zh-TW/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken)

[XPackageRegisterInstallationProgressChanged](/zh-TW/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. 您可以選擇不封鎖。若要確保在刪除資料之前回呼都已完成，請定期以 false 作為 *wait* 呼叫取消註冊。當它最後傳回 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](/zh-TW/reference/system/xpackage/xpackage_members)\
[串流安裝和 Intelligent Delivery](/zh-TW/build/core-features/common/packaging/overviews/streaming_install-intelligent_delivery)


## Related topics

- [XPackageUnregisterInstallationProgressChanged](/reference/system/xpackage/functions/xpackageunregisterinstallationprogresschanged.md)
- [XPackageRegisterInstallationProgressChanged](/reference/system/xpackage/functions/xpackageregisterinstallationprogresschanged.md)
- [XPackage](/reference/system/xpackage/xpackage_members.md)
- [XTaskQueueRegistrationToken](/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken.md)
- [XPackageInstallationProgressCallback](/reference/system/xpackage/functions/xpackageinstallationprogresscallback.md)
