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

# XPackageUnregisterPackageInstalled

> XPackageUnregisterPackageInstalled

# XPackageUnregisterPackageInstalled

Anula el registro de una devolución de llamada de paquete instalado registrada previamente.

## Sintaxis

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

### Parámetros

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

El token devuelto por [XPackageRegisterPackageInstalled](/reference/system/xpackage/functions/xpackageregisterpackageinstalled).

*wait*   \_In\_\
Tipo: bool

Indica si se debe bloquear hasta que se completen las devoluciones de llamada pendientes.

### Valor devuelto

Tipo: bool

Si *wait* es false y la anulación del registro está pendiente, devuelve false. De lo contrario, devuelve true.

## Comentarios

<Note>No es seguro llamar a esta función en un subproceso sensible al tiempo. Para obtener más información, consulte [Subprocesos sensibles al tiempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads).</Note>

La anulación del registro de una notificación se comporta de la siguiente manera:

* Del conjunto de devoluciones de llamada registradas, la anulación del registro quita la devolución de llamada asociada al token.
* Si no se está ejecutando ninguna devolución de llamada para ese token de devolución de llamada, la llamada devuelve true.
* Si se están ejecutando devoluciones de llamada y *wait* es true, la llamada se bloqueará hasta que la devolución de llamada en ejecución haya terminado.
* Si se están ejecutando devoluciones de llamada y *wait* es false, la llamada no se bloqueará, pero devolverá false. Una vez completada la devolución de llamada del token, el registro del token se anula automáticamente.

Este mecanismo permite los siguientes patrones de codificación:

1. Puede bloquear en la anulación del registro para garantizar que sus devoluciones de llamada nunca se invoquen después de una llamada de anulación del registro.
2. Puede optar por no bloquear. Para asegurarse de que sus devoluciones de llamada se hayan completado antes de eliminar datos, llame periódicamente a la anulación del registro con false en *wait*. Cuando finalmente devuelva true, todas sus devoluciones de llamada habrán terminado y podrá eliminar el estado.
3. Si a su devolución de llamada no le importa si se está invocando durante una llamada de anulación del registro, puede simplemente pasar false en *wait* e ignorar el valor devuelto.

En el siguiente ejemplo de código se ilustra el uso de **XPackageUnregisterPackageInstalled**:

```cpp theme={null}
void StopListeningForDlc(XTaskQueueRegistrationToken token)
{
    XPackageUnregisterPackageInstalled(token, false);
}  
```

## Requisitos

**Encabezado:** XPackage.h

**Biblioteca:** xgameruntime.lib

**Plataformas compatibles:** Windows, consolas de la familia XBOX One y consolas XBOX Series

## Documentación conceptual

* [Subprocesos sensibles al tiempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## Consulte también

[XPackage](/reference/system/xpackage/xpackage_members)\
[Cómo crear y usar paquetes de contenido descargable (DLC) para PC y XBOX One](/build/core-features/common/packaging/packaging-downloadable-content-dlc)


## Related topics

- [XPackageRegisterPackageInstalled](/es/reference/system/xpackage/functions/xpackageregisterpackageinstalled.md)
- [XPackage](/es/reference/system/xpackage/xpackage_members.md)
- [XTaskQueueRegistrationToken](/es/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken.md)
- [Contenedores de API de C# de Unity para el GDK](/es/build/gdk-and-engines/unity/unity-api-wrappers.md)
- [XPackageInstalledCallback](/es/reference/system/xpackage/functions/xpackageinstalledcallback.md)
