> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SetDeleteOnDestroy

> 指定されたキャッシュに対応するすべてのキャッシュ セッション オブジェクトが破棄されると、キャッシュはクリアされます。

指定されたキャッシュに対応するすべてのキャッシュ セッション オブジェクトが破棄されると、キャッシュはクリアされます。

ディスク キャッシュをクリアする方法については、**解説** を参照してください。

## 解説

ディスク キャッシュは、次のいずれかの方法でクリアできます。

* 明示的に、セッション オブジェクトで **SetDeleteOnDestroy** を呼び出し、その後セッションを解放する。
* 明示的に、開発者モードで [D3D12\_SHADER\_CACHE\_KIND\_FLAG\_APPLICATION\_MANAGED](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_shader_cache_kind_flags_public.md) を指定して [ID3D12Device9::ShaderCacheControl](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12device9/methods/id3d12device9_shadercachecontrol_public.md) を呼び出す。
* 暗黙的に、作成時に使用されたバージョンと一致しないバージョンでセッション オブジェクトを作成する。
* 外部から、ディスク クリーンアップ ユーティリティがそれを列挙してクリアする。これは [D3D12\_SHADER\_CACHE\_FLAG\_USE\_WORKING\_DIR](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_shader_cache_flags_public.md) フラグで作成されたキャッシュに対しては発生しません。
* 手動で、[D3D12\_SHADER\_CACHE\_FLAG\_USE\_WORKING\_DIR](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_shader_cache_flags_public.md) キャッシュのためにディスクに保存されているファイル (`*.idx`、`*.val`、`*.lock`) を削除する。作業ディレクトリの外に保存されているキャッシュに対して、アプリケーションはこれを試行しないでください。

## 要件

**ヘッダー:** d3d12\_xs.h または d3d12\_x.h\
**ライブラリ:** d3d12\_xs.lib または d3d12\_x.lib\
**サポートされるプラットフォーム**: XBOX Series 本体および XBOX One ファミリ

## 関連項目

* [D3D12 シェーダー キャッシュ API](https://microsoft.github.io/DirectX-Specs/d3d/ShaderCache.html)


## Related topics

- [D3D12_SHADER_CACHE_MODE](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_shader_cache_mode_public.md)
- [Delete](https://docs.xbox.com/api-reference/authentication/delete.md)
- [DestroyOwnedObject](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12lifetimetracker/methods/id3d12lifetimetracker_destroyownedobject_public.md)
- [PartyNetwork::DestroyEndpoint](https://docs.xbox.com/ja-jp/services/playfab/multiplayer/networking/reference/classes/PartyNetwork/methods/partynetwork_destroyendpoint.md)
- [Delete Content](https://docs.xbox.com/api-reference/content/delete-content.md)
