IDXGIDevice2::OfferResources 메서드(dxgi1_2.h)
운영 체제에서 콘텐츠를 삭제하여 리소스의 비디오 메모리를 해제할 수 있습니다.
구문
HRESULT OfferResources(
[in] UINT NumResources,
[in] IDXGIResource * const *ppResources,
[in] DXGI_OFFER_RESOURCE_PRIORITY Priority
);
매개 변수
[in] NumResources
ppResources 인수 배열의 리소스 수입니다.
[in] ppResources
제공할 리소스에 대한 IDXGIResource 인터페이스에 대한 포인터 배열입니다.
[in] Priority
중요한 데이터가 얼마나 중요한지 나타내는 DXGI_OFFER_RESOURCE_PRIORITY 형식의 값입니다.
반환 값
OfferResources는 다음을 반환합니다.
- 리소스가 성공적으로 제공되었는지 S_OK
- 배열의 리소스 또는 우선 순위가 잘못된 경우 E_INVALIDARG
설명
Priority 매개 변수가 지정하는 우선 순위 값은 호출자가 콘텐츠를 얼마나 중요하게 간주하는지 설명합니다. 운영 체제는 우선 순위 값을 사용하여 우선 순위 순서대로 리소스를 삭제합니다. 운영 체제는 우선 순위가 낮은 리소스를 삭제한 후 더 높은 우선 순위로 제공되는 리소스를 삭제합니다.
리소스가 파이프라인에 바인딩된 동안 OfferResources 를 호출하여 리소스를 제공하는 경우 리소스는 바인딩되지 않습니다. 매핑된 리소스에서는 OfferResources 를 호출할 수 없습니다. 리소스를 제공하면 IDXGIDevice2::ReclaimResource 메서드를 호출하여 리소스를 회수할 때까지 리소스를 매핑하거나 파이프라인에 바인딩할 수 없습니다. 변경할 수 없는 리소스를 제공하기 위해 OfferResources 를 호출할 수 없습니다.
공유 리소스를 제공하려면 공유 디바이스 중 하나에서만 OfferResources 를 호출합니다. 리소스에 대한 단독 액세스를 보장하려면 IDXGIKeyedMutex 개체를 사용한 다음, 뮤텍스를 보유하는 동안 에만 OfferResources 를 호출해야 합니다. 실제로 IDXGIKeyedMutex 를 사용하지 않고 공유 리소스를 제공하는 것은 지원되지 않으므로 IDXGIKeyedMutex 를 사용하지 않는 한 공유 리소스를 제공할 수 없습니다.
요구 사항
지원되는 최소 클라이언트 | Windows 8 및 Windows 7용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2012 및 Windows Server 2008 R2용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | dxgi1_2.h |
라이브러리 | Dxgi.lib |