Método ID3D11Device1::CreateDeferredContext1 (d3d11_1.h)
Cria um contexto adiado, que pode registrar listas de comandos.
Sintaxe
HRESULT CreateDeferredContext1(
UINT ContextFlags,
[out, optional] ID3D11DeviceContext1 **ppDeferredContext
);
Parâmetros
ContextFlags
Reservado para uso futuro. Passe 0.
[out, optional] ppDeferredContext
Após a conclusão do método, o ponteiro passado para um ponteiro de interface ID3D11DeviceContext1 é inicializado.
Valor retornado
Retorna S_OK se tiver êxito; caso contrário, retorna um dos seguintes:
- Retorna DXGI_ERROR_DEVICE_REMOVED se o adaptador gráfico foi fisicamente removido do computador ou ocorreu uma atualização de driver para o adaptador gráfico. Se esse erro ocorrer, você deverá destruir e recriar o dispositivo.
- Retorna DXGI_ERROR_INVALID_CALL se o método CreateDeferredContext1 não puder ser chamado do contexto atual. Por exemplo, se o dispositivo tiver sido criado com o valor D3D11_CREATE_DEVICE_SINGLETHREADED , CreateDeferredContext1 retornará DXGI_ERROR_INVALID_CALL.
- Retorna E_INVALIDARG se o parâmetro ContextFlags for inválido.
- Retorna E_OUTOFMEMORY se o aplicativo tiver esgotado a memória disponível.
Comentários
Um contexto adiado é um contexto thread-safe que você pode usar para gravar comandos gráficos em um thread diferente do thread de renderização main. Usando um contexto adiado, você pode gravar comandos gráficos em uma lista de comandos encapsulada pela interface ID3D11CommandList . Depois de gravar todos os itens de cena, você pode enviá-los para o thread de renderização main para renderização final. Dessa maneira, você pode executar tarefas de renderização simultaneamente em vários threads e potencialmente melhorar o desempenho em cenários de CPU de vários núcleos.
Você pode criar vários contextos adiados.
Windows Phone 8: há suporte para essa API.
Requisitos
Cliente mínimo com suporte | Windows 8 e Platform Update para Windows 7 [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2012 e Platform Update para Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | d3d11_1.h |
Biblioteca | D3D11.lib |
Confira também
ID3D11Device2::CreateDeferredContext2