Метод IMFDXGIDeviceManager::ResetDevice (mfobjects.h)

Задает устройство Microsoft Direct3D или уведомляет диспетчер устройств о том, что устройство Direct3D было сброшено.

Синтаксис

HRESULT ResetDevice(
  [in] IUnknown *pUnkDevice,
  [in] UINT     resetToken
);

Параметры

[in] pUnkDevice

Указатель на интерфейс IUnknown устройства DXGI.

[in] resetToken

Маркер, полученный в параметре pResetToken функции MFCreateDXGIDeviceManager .

Возвращаемое значение

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

При первом создании диспетчер устройств DXGI вызовите этот метод с указателем на устройство Direct3D. (Диспетчер устройств не создает устройство; вызывающий объект должен изначально предоставить указатель устройства.) Кроме того, вызовите этот метод, если устройство Direct3D теряется и вам нужно сбросить устройство или создать новое устройство.

Параметр resetToken гарантирует, что только компонент, который изначально создал диспетчер устройств, может сделать недействительным текущее устройство.

Если этот метод будет выполнен успешно, все открытые дескрипторы устройств становятся недействительными.

Чтобы создать устройство Microsoft Direct3D 11, вызовите D3D11CreateDevice.

Устройство должно быть создано с помощью флага создания устройства D3D11_CREATE_DEVICE_VIDEO_SUPPORT , определенного в перечислении D3D11_CREATE_DEVICE_FLAG .

Рекомендуется использовать многопотоковую защиту в контексте устройства, чтобы предотвратить проблемы взаимоблокировки, которые иногда могут возникать при вызове ID3D11VideoContext::GetDecoderBuffer или ID3D11VideoContext::ReleaseDecoderBuffer. Чтобы задать многопотоковую защиту, сначала вызовите QueryInterface в ID3D11Device , чтобы получить указатель ID3D10Multithread . Затем вызовите ID3D10Multithread::SetMultithreadProtected, передав значение true для bMTProtect.

Требования

Требование Значение
Минимальная версия клиента Windows 8 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header mfobjects.h (включая Mfidl.h)

См. также раздел

IMFDXGIDeviceManager