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

Annule l'inscription d'un rappel de changement de progression de l'installation inscrit précédemment.

## Syntaxe

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

### Paramètres

*installationMonitor*   \_In\_\
Type : XPackageInstallationMonitorHandle

Moniteur d'installation duquel le rappel spécifié doit être supprimé.

*token*   \_In\_\
Type : [XTaskQueueRegistrationToken](/fr-CA/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken)

Jeton retourné par [XPackageRegisterInstallationProgressChanged](/fr-CA/reference/system/xpackage/functions/xpackageregisterinstallationprogresschanged).

*wait*   \_In\_\
Type : bool

Indique s'il faut bloquer jusqu'à ce que tous les rappels en attente soient terminés.

### Valeur de retour

Type : bool

Si *wait* a la valeur false et que l'annulation de l'inscription est en attente, retourne false. Sinon, retourne true.

## Remarques

<Note>Il n'est pas sécuritaire d'appeler cette fonction sur un thread urgent. Pour plus d'informations, consultez [Threads urgents](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads).</Note>

L'annulation de l'inscription d'une notification se comporte comme suit :

* L'annulation de l'inscription supprime de l'ensemble des rappels inscrits le rappel associé au jeton.
* Si aucun rappel ne s'exécute pour ce jeton de rappel, l'appel retourne true.
* Si des rappels s'exécutent et que *wait* a la valeur true, l'appel bloque jusqu'à ce que le rappel en cours d'exécution soit terminé.
* Si des rappels s'exécutent et que *wait* a la valeur false, l'appel ne bloque pas, mais retourne false. Une fois le rappel du jeton terminé, l'inscription du jeton est automatiquement annulée.

Ce mécanisme permet les modèles de codage suivants :

1. Vous pouvez bloquer lors de l'annulation de l'inscription pour vous assurer que vos rappels ne sont jamais appelés après un appel d'annulation de l'inscription.
2. Vous pouvez choisir de ne pas bloquer. Pour vous assurer que vos rappels sont terminés avant de supprimer des données, appelez périodiquement l'annulation de l'inscription avec la valeur false pour *wait*. Lorsqu'elle retourne finalement true, tous vos rappels sont terminés et vous pouvez supprimer l'état.
3. S'il importe peu à votre rappel d'être appelé pendant un appel d'annulation de l'inscription, vous pouvez simplement passer false pour *wait* et ignorer la valeur de retour.

Exemple :

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

## Configuration requise

**En-tête :** XPackage.h

**Bibliothèque :** xgameruntime.lib

**Plateformes prises en charge :** Windows, consoles de la famille XBOX One et consoles XBOX Series

## Documentation conceptuelle

* [Threads urgents](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## Voir aussi

[XPackage](/fr-CA/reference/system/xpackage/xpackage_members)\
[Installation en continu et Intelligent Delivery](/fr-CA/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)
