Partager via


ID3D12ShaderCacheSession ::SetDeleteOnDestroy, méthode (d3d12.h)

Lorsque tous les objets de session de cache correspondant à un cache donné sont détruits, le cache est effacé.

Consultez les remarques pour connaître les façons dont un cache de disque peut être effacé.

Syntaxe

void SetDeleteOnDestroy();

Valeur de retour

None

Remarques

Un cache de disque peut être effacé de l’une des manières suivantes.

  • Explicitement, en appelant SetDeleteOnDestroy sur l’objet de session, puis en libérant la session.
  • Explicitement, en mode développeur, en appelant ID3D12Device9 ::ShaderCacheControl avec D3D12_SHADER_CACHE_KIND_FLAG_APPLICATION_MANAGED.
  • Implicitement, en créant un objet de session avec une version qui ne correspond pas à la version utilisée pour le créer.
  • En externe, par l’utilitaire de nettoyage de disque qui l’énumére et l’efface. Cela ne se produit pas pour les caches créés avec l’indicateur D3D12_SHADER_CACHE_FLAG_USE_WORKING_DIR .
  • Manuellement, en supprimant les fichiers (*.idx, *.valet *.lock) stockés sur le disque pour D3D12_SHADER_CACHE_FLAG_USE_WORKING_DIR caches. Votre application ne doit pas tenter de le faire pour les caches stockés en dehors du répertoire de travail.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 Build 20348
Serveur minimal pris en charge Windows 10 Build 20348
En-tête d3d12.h
Bibliothèque d3d12.lib
DLL d3d12.dll

Voir aussi