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

# XSystemHandleTrack

> XSystemHandleTrack

# XSystemHandleTrack

Gaming Runtime のハンドル ライフタイム イベントを追跡するためのコールバックを登録します。

## Syntax

```cpp theme={null}
HRESULT XSystemHandleTrack(
  XSystemHandleCallback callback,
  void * context
)
```

### Parameters

*callback*    \_In\_\
型: [XSystemHandleCallback](/reference/system/xsystem/functions/xsystemhandlecallback)

ハンドルの作成および破棄時に呼び出されるユーザー定義コールバック。ハンドル追跡を無効にするには、コールバックに NULL を渡します。

*context*    \_In\_opt\_\
型: void \*

コールバックに渡されるユーザー定義のコンテキスト。

### Return value

型:  [HRESULT](https://learn.microsoft.com/openspecs/windows_protocols/ms-erref/0642cb2f-2075-4469-918c-4441e69c548a)

成功した場合は **S\_OK**、それ以外の場合はエラー コードを返します。エラー コードの一覧については、[エラー コード](/reference/errorcodes) を参照してください。

## Remarks

ゲーム開発者は、不適切なハンドル使用に関連するバグをトラブルシューティングできる機能を必要としています。GRTS API のほとんどは、プラットフォーム実装内の内部オブジェクトのライフタイムに対応するハンドルを使用します。開発者が誤って無効な (NULL、既に解放されているなどの) ハンドルをこれらの API に渡してしまうことで、タイトルのクラッシュにつながる問題がゲームで発生することがよくあります。また、開発者が意図せずにハンドルをリークし、リソースの過剰使用を引き起こすこともあります。ハンドル追跡 API の目的は、開発者がこれらの問題を診断し、修正できるようにすることです。

この API には、アクティブとパッシブの 2 つのコンポーネントがあります。GRTS が作成するすべてのハンドルは、デバッグと小売のどちらのシナリオでも継続的に追跡されます。ハンドルが API に渡されるたびに、プラットフォームは、これらのハンドルが有効な内部オブジェクトに対応していることを確認するために検証を行います。無効なハンドルが検出された場合、プラットフォームはエラーを記録し、[XErrorReport](/reference/system/xerror/functions/xerrorsetoptions) を呼び出して開発者に問題を通知します。プラットフォームは無効なハンドルの使用を抑制するための追加の処理は行わず、この機能が導入される前と同様にアプリケーションがクラッシュすることを許可します。最後に、[XGameRuntimeUninitialize](/reference/system/xgameruntimeinit/functions/xgameruntimeuninitialize) の時点で発生しているハンドル リークも、[XErrorReport](/reference/system/xerror/functions/xerrorsetoptions) を介して報告されます。現時点では、ハンドル追跡システムは GRTS の外部にあるハンドルの追跡を有効にしません。

## Requirements

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

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

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

## See also

[XSystem のメンバー](/reference/system/xsystem/xsystem_members)

[XSystemHandleCallback](/reference/system/xsystem/functions/xsystemhandlecallback)


## Related topics

- [XSystemHandleCallback](/ja-jp/reference/system/xsystem/functions/xsystemhandlecallback.md)
- [XSystem](/ja-jp/reference/system/xsystem/xsystem_members.md)
- [PHEAP_TRACK_FREE_ROUTINE callback](/ja-jp/reference/system/xmem/functions/pheap_track_free_routine.md)
- [PHEAP_TRACK_ALLOC_ROUTINE callback](/ja-jp/reference/system/xmem/functions/pheap_track_alloc_routine.md)
- [PHEAP_TRACK_REALLOC_ROUTINE callback](/ja-jp/reference/system/xmem/functions/pheap_track_realloc_routine.md)
