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

Cancela o registro de um retorno de chamada de alteração de progresso de instalação registrado anteriormente.

## Sintaxe

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

### Parâmetros

*installationMonitor*   \_In\_\
Tipo: XPackageInstallationMonitorHandle

O monitor de instalação do qual o retorno de chamada especificado deve ser removido.

*token*   \_In\_\
Tipo: [XTaskQueueRegistrationToken](/pt-BR/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken)

O token retornado por [XPackageRegisterInstallationProgressChanged](/pt-BR/reference/system/xpackage/functions/xpackageregisterinstallationprogresschanged).

*wait*   \_In\_\
Tipo: bool

Indica se deve bloquear até que todos os retornos de chamada pendentes sejam concluídos.

### Valor retornado

Tipo: bool

Se *wait* for false e o cancelamento do registro estiver pendente, retornará false. Caso contrário, retornará true.

## Comentários

<Note>Não é seguro chamar esta função em um thread sensível ao tempo. Para obter mais informações, consulte [Threads sensíveis ao tempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads).</Note>

O cancelamento do registro de uma notificação se comporta da seguinte maneira:

* Do conjunto de retornos de chamada registrados, o cancelamento do registro remove o retorno de chamada associado ao token.
* Se nenhum retorno de chamada estiver em execução para esse token de retorno de chamada, a chamada retornará true.
* Se houver retornos de chamada em execução e *wait* for true, a chamada ficará bloqueada até que o retorno de chamada em execução seja concluído.
* Se houver retornos de chamada em execução e *wait* for false, a chamada não ficará bloqueada, mas retornará false. Depois que o retorno de chamada do token for concluído, o registro do token será cancelado automaticamente.

Esse mecanismo permite os seguintes padrões de codificação:

1. Você pode bloquear no cancelamento do registro para garantir que seus retornos de chamada nunca sejam invocados após uma chamada para cancelar o registro.
2. Você pode optar por não bloquear. Para garantir que seus retornos de chamada sejam concluídos antes de excluir dados, chame periodicamente o cancelamento do registro com false para *wait*. Quando ele finalmente retornar true, todos os seus retornos de chamada terão sido concluídos e você poderá excluir o estado.
3. Se não importar para o seu retorno de chamada se ele está sendo invocado durante uma chamada de cancelamento de registro, você pode simplesmente passar false para *wait* e ignorar o valor retornado.

Exemplo:

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

## Requisitos

**Cabeçalho:** XPackage.h

**Biblioteca:** xgameruntime.lib

**Plataformas compatíveis:** Windows, consoles da família XBOX One e consoles XBOX Series

## Documentação conceitual

* [Threads sensíveis ao tempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## Confira também

[XPackage](/pt-BR/reference/system/xpackage/xpackage_members)\
[Instalação por streaming e Intelligent Delivery](/pt-BR/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)
