IDXGIDevice2::ReclaimResources 方法 (dxgi1_2.h)

还原对以前通过调用 IDXGIDevice2::OfferResources 提供的资源的访问。

语法

HRESULT ReclaimResources(
  [in]            UINT          NumResources,
  [in]            IDXGIResource * const *ppResources,
  [out, optional] BOOL          *pDiscarded
);

参数

[in] NumResources

ppResources 参数和 pDiscarded 参数数组中的资源数。

[in] ppResources

指向要回收的资源的 IDXGIResource 接口的指针数组。

[out, optional] pDiscarded

指向接收布尔值的数组的指针。 数组中的每个值对应于 ppResources 参数指定的同一索引处的资源。 如果相应资源的内容已被丢弃并且现在未定义,则运行时将每个布尔值设置为 TRUE;如果相应资源的旧内容仍然保持不变,则运行时将设置为 FALSE。 如果调用方打算使用新内容填充资源,无论旧内容是否被丢弃,调用方都可以传入 NULL

返回值

ReclaimResources 返回:

  • S_OK是否成功回收了资源
  • 如果资源无效,E_INVALIDARG

备注

调用 IDXGIDevice2::OfferResources 以提供一个或多个资源后,必须先调用 ReclaimResources ,然后才能再次使用这些资源。 必须在 pDiscarded 处检查数组中的值,以确定每个资源的内容是否被丢弃。 如果资源的内容在提供时被丢弃,则其当前内容未定义。 因此,在使用资源之前,必须覆盖资源的内容。

若要回收共享资源,请仅在其中一个共享设备上调用 ReclaimResources 。 若要确保以独占方式访问资源,必须使用 IDXGIKeyedMutex 对象,然后仅在持有互斥时调用 ReclaimResources

适用于 Windows 7 的平台更新: 运行时验证是否在非共享资源上正确使用 ReclaimResources ,但未执行预期功能。 有关 Windows 7 平台更新的详细信息,请参阅 适用于 Windows 7 的平台更新

要求

   
最低受支持的客户端 适用于 Windows 7 的 Windows 8 和平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2012 和适用于 Windows Server 2008 R2 的平台更新 [桌面应用 |UWP 应用]
目标平台 Windows
标头 dxgi1_2.h
Library Dxgi.lib

请参阅

IDXGIDevice2

IDXGIDevice2::OfferResources