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

以前に登録したパッケージ インストール完了コールバックを登録解除します。

## Syntax

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

### Parameters

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

[XPackageRegisterPackageInstalled](/reference/system/xpackage/functions/xpackageregisterpackageinstalled) から返されたトークン。

*wait*   \_In\_\
型: bool

保留中のコールバックが完了するまでブロックするかどうかを示します。

### Return value

型: bool

*wait* が false で登録解除が保留中の場合は false を返します。それ以外の場合は true を返します。

## Remarks

<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 を指定して定期的に unregister を呼び出します。最終的に true が返されると、すべてのコールバックが完了しており、状態を削除できます。
3. 登録解除呼び出し中にコールバックが呼び出されるかどうかを気にしない場合は、*wait* に false を渡して戻り値を無視することもできます。

次のコード サンプルは、**XPackageUnregisterPackageInstalled** の使用例を示しています。

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

## Requirements

**ヘッダー:** XPackage.h

**ライブラリ:** xgameruntime.lib

**サポートされているプラットフォーム:** Windows、XBOX One ファミリー本体および XBOX Series 本体

## Conceptual documentation

* [タイム センシティブ スレッド](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## See also

[XPackage](/reference/system/xpackage/xpackage_members)\
[PC および XBOX One 用のダウンロード可能なコンテンツ パッケージ (DLC) を作成して使用する方法](/build/core-features/common/packaging/packaging-downloadable-content-dlc)


## Related topics

- [XPackageRegisterPackageInstalled](/ja-jp/reference/system/xpackage/functions/xpackageregisterpackageinstalled.md)
- [XTaskQueueRegistrationToken](/ja-jp/reference/system/xtaskqueue/structs/xtaskqueueregistrationtoken.md)
- [XPackage](/ja-jp/reference/system/xpackage/xpackage_members.md)
- [GDK 向け Unity C# API ラッパー](/ja-jp/build/gdk-and-engines/unity/unity-api-wrappers.md)
- [XPackageInstalledCallback](/ja-jp/reference/system/xpackage/functions/xpackageinstalledcallback.md)
