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

# D3D12_SHADER_CACHE_SESSION_DESC

> Descreve uma sessão de cache de sombreador.

Descreve uma sessão de cache de sombreador.

## Sintaxe

```cpp theme={null}
typedef struct D3D12_SHADER_CACHE_SESSION_DESC
{
    GUID Identifier;
    D3D12_SHADER_CACHE_MODE Mode;
    D3D12_SHADER_CACHE_FLAGS Flags;
    UINT MaximumInMemoryCacheSizeBytes;
    UINT MaximumInMemoryCacheEntries;
    UINT MaximumValueFileSizeBytes;
    UINT64 Version;
} D3D12_SHADER_CACHE_SESSION_DESC
```

### Membros

*Identifier*\
Tipo: GUID

Um identificador exclusivo a ser atribuído a este cache específico. Caches com identificadores diferentes são armazenados lado a lado. Caches com o mesmo identificador são compartilhados entre todas as sessões no mesmo processo. Criar um cache de disco com o mesmo identificador de um cache já existente abre esse cache, a menos que a **Version** não corresponda. Nesse caso, se não houver outras sessões abertas para esse cache, ele será limpo e recriado. Se houver sessões existentes, [ID3D12Device9::CreateShaderCacheSession](/pt-BR/reference/graphics/d3d12/interfaces/id3d12device9/methods/id3d12device9_createshadercachesession_public) retornará **DXGI\_ERROR\_ALREADY\_EXISTS**.

*Mode*\
Tipo: D3D12\_SHADER\_CACHE\_MODE

Especifica o tipo de cache.

*Flags*\
Tipo: D3D12\_SHADER\_CACHE\_FLAGS

Modifica o comportamento do cache.

*MaximumInMemoryCacheSizeBytes*\
Tipo: UINT

Para caches em memória, este é o único armazenamento disponível. Para caches de disco, todas as entradas armazenadas ou encontradas são armazenadas temporariamente na memória, até serem removidas por entradas mais recentes. Esse valor determina o tamanho desse armazenamento temporário. O padrão é 1 KB.

*MaximumInMemoryCacheEntries*\
Tipo: UINT

Especifica quantas entradas podem ser armazenadas na memória. O padrão é 128.

*MaximumValueFileSizeBytes*\
Tipo: UINT

Para caches de disco, controla o tamanho máximo do arquivo. O padrão é 128 MB.

*Version*\
Tipo: UINT64

Pode ser usado para limpar caches implicitamente quando uma atualização de aplicativo ou componente é feita. Se a versão não corresponder à versão armazenada no cache, ele será apagado e recriado.

## Comentários

## Requisitos

**Cabeçalho:** d3d12\_xs.h ou d3d12\_x.h\
**Biblioteca:** d3d12\_xs.lib ou d3d12\_x.lib\
**Plataformas com suporte**: consoles XBOX Series e família XBOX One

## Confira também

* [ID3D12Device9::CreateShaderCacheSession](/pt-BR/reference/graphics/d3d12/interfaces/id3d12device9/methods/id3d12device9_createshadercachesession_public)
* [APIs de cache de sombreador do D3D12](https://microsoft.github.io/DirectX-Specs/d3d/ShaderCache.html)


## Related topics

- [ID3D12ShaderCacheSession::GetDesc](/pt-BR/reference/graphics/d3d12/interfaces/id3d12shadercachesession/methods/id3d12shadercachesession_getdesc_public.md)
- [D3D12_SHADER_CACHE_FLAGS](/pt-BR/reference/graphics/d3d12/enums/d3d12_shader_cache_flags_public.md)
- [CreateShaderCacheSession (consoles XBOX Series)](/pt-BR/reference/graphics/d3d12/interfaces/id3d12device9/methods/id3d12device9_createshadercachesession_public.md)
- [D3D12_SHADER_CACHE_SUPPORT_FLAGS](/pt-BR/reference/graphics/d3d12/enums/d3d12_shader_cache_support_flags_public.md)
- [D3D12_SHADER_CACHE_MODE](/pt-BR/reference/graphics/d3d12/enums/d3d12_shader_cache_mode_public.md)
