Compartilhar via


Método ID3D12Device3::EnqueueMakeResident (d3d12.h)

Torna os objetos residentes de forma assíncrona para o dispositivo.

Sintaxe

HRESULT EnqueueMakeResident(
       D3D12_RESIDENCY_FLAGS Flags,
       UINT                  NumObjects,
  [in] ID3D12Pageable        * const *ppObjects,
  [in] ID3D12Fence           *pFenceToSignal,
       UINT64                FenceValueToSignal
);

Parâmetros

Flags

Tipo: D3D12_RESIDENCY_FLAGS

Controla se os objetos devem ser residentes se o aplicativo estiver acima do orçamento de memória.

NumObjects

Tipo: UINT

O número de objetos na matriz ppObjects para tornar residente para o dispositivo.

[in] ppObjects

Tipo: ID3D12Pageable*

Um ponteiro para um bloco de memória; contém uma matriz de ponteiros de interface ID3D12Pageable para os objetos.

Embora a maioria dos objetos D3D12 herda de ID3D12Pageable, as alterações de residência só têm suporte no seguinte:

  • heaps de descritor
  • heaps
  • recursos confirmados
  • heaps de consulta

[in] pFenceToSignal

Tipo: ID3D12Fence*

Um ponteiro para a cerca usada para sinalizar quando o trabalho é feito.

FenceValueToSignal

Tipo: UINT64

Um valor de 64 bits sem sinal sinalizado para a cerca quando o trabalho é feito.

Retornar valor

Tipo: HRESULT

Esse método retorna um dos códigos de retorno do Direct3D 12.

Comentários

EnqueueMakeResident executa as mesmas ações que MakeResident, mas não aguarda que os recursos sejam residentes. Em vez disso, EnqueueMakeResident sinaliza uma cerca quando o trabalho é feito.

O sistema não permitirá trabalho que referencie os recursos que estão sendo feitos residentes usando EnqueueMakeResident antes que sua cerca seja sinalizada. Em vez disso, as chamadas para essa API têm a garantia de sinalizar sua cerca correspondente em ordem, para que a mesma cerca possa ser usada de chamada para chamada.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d12.h
Biblioteca D3D12.lib
DLL D3D12.dll

Confira também

ID3D12Device

ID3D12Device3