Метод ID3D11Device::CreateDeferredContext (d3d11.h)
Создает отложенный контекст, который может записывать списки команд.
Синтаксис
HRESULT CreateDeferredContext(
UINT ContextFlags,
[out, optional] ID3D11DeviceContext **ppDeferredContext
);
Параметры
ContextFlags
Тип: UINT
Зарезервировано для последующего использования. Пройти 0.
[out, optional] ppDeferredContext
Тип: ID3D11DeviceContext**
После завершения метода инициализируется переданный указатель на указатель интерфейса ID3D11DeviceContext .
Возвращаемое значение
Тип: HRESULT
В случае успешного выполнения возвращает S_OK; в противном случае возвращает одно из следующих значений:
- Возвращает DXGI_ERROR_DEVICE_REMOVED, если карта видео было физически удалено из системы или произошло обновление драйвера для карта видео. В случае возникновения этой ошибки необходимо уничтожить и повторно создать устройство.
- Возвращает DXGI_ERROR_INVALID_CALL , если метод CreateDeferredContext не может быть вызван из текущего контекста. Например, если устройство было создано со значением D3D11_CREATE_DEVICE_SINGLETHREADED , CreateDeferredContext возвращает DXGI_ERROR_INVALID_CALL.
- Возвращает E_INVALIDARG , если параметр ContextFlags недопустим.
- Возвращает E_OUTOFMEMORY , если приложение исчерпало доступную память.
Комментарии
Отложенный контекст — это потокобезопасный контекст, который можно использовать для записи графических команд в потоке, отличном от потока отрисовки main. С помощью отложенного контекста можно записывать графические команды в список команд, инкапсулированный интерфейсом ID3D11CommandList . После записи всех элементов сцены их можно отправить в поток main отрисовки для окончательной отрисовки. Таким образом можно выполнять задачи отрисовки одновременно в нескольких потоках и потенциально повысить производительность в сценариях использования многоядерных ЦП.
Можно создать несколько отложенных контекстов.
Windows Phone 8. Этот API поддерживается.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d11.h |
Библиотека | D3d11.lib |
См. также раздел
ID3D11Device1::CreateDeferredContext1