다음을 통해 공유


ICacheProvider::SetCacheRecord 메서드

캐시 공급자의 캐시 관련 데이터를 설정합니다.

구문

virtual VOID SetCacheRecord(  
   IHttpCacheSpecificData* pCacheRecord  
) = 0;  

매개 변수

pCacheRecord
IHttpCacheSpecificData 값에 대한 포인터입니다.

설명

나중에 GetCacheRecord 메서드에 대한 내부 호출로 인해 액세스 위반이 발생할 수 있으므로 매개 변수는 pCacheRecord NULL이 아니어야 합니다.

중요

메서드는 SetCacheRecord IIS 인프라의 일부이며 코드에서 직접 사용할 수 없습니다.

구현자에 대한 참고 사항

ICacheProvider 구현자는 포인터를 private``IHttpCacheSpecificData 멤버 데이터로 선언합니다. 이러한 구현자의 생성자가 호출되면 이 멤버 데이터가 포인터에 IHttpCacheSpecificData 할당됩니다. 를 호출SetCacheRecord하기 전에 호출자는 먼저 포인터 SetCacheRecord 에서 IHttpCacheSpecificData::ReferenceCacheDataIHttpCacheSpecificData 를 호출합니다. 구현자는 변수를 privateIHttpCacheSpecificData 포인터에 할당합니다.

SetCacheRecord 가 호출되면 현재 private 멤버 포인터가 NULL이 아닌 경우 구현자는 먼저 검사 합니다. private 데이터가 NULL이 아닌 경우 이 현재 데이터에 대해 먼저 IHttpCacheSpecificData::D ereferenceCacheData를 호출하여 해제할 수 있지만 항상 변수를 매개 변수에 pCacheRecord 할당 private 합니다.

다음 표는 GetCacheKeyGetCacheRecord 및 인터페이스의 동일한 구현자에서 메서드에서 반환되어야 하는 일대일 인터페이스 매핑의 ICacheProvider 샘플입니다.

GetCacheKey 인터페이스 GetCacheRecord 인터페이스
IFileKey IHttpFileInfo
IHttpTokenKey IHttpTokenEntry
IHttpCacheKey IHttpCacheSpecificData

호출자 참고 사항

ICacheProvider 구현자는 포인터의 소유권을 맡습니다 IHttpCacheSpecificData . 를 호출 SetCacheRecord하기 전에 먼저 포인터를 호출 IHttpCacheSpecificData::ReferenceCacheData 하여 이 포인터에 하나의 소유자가 있도록 합니다.

요구 사항

형식 Description
클라이언트 - Windows Vista의 IIS 7.0
- Windows 7의 IIS 7.5
- Windows 8의 IIS 8.0
- WINDOWS 10 IIS 10.0
서버 - Windows Server 2008의 IIS 7.0
- Windows Server 2008 R2의 IIS 7.5
- Windows Server 2012의 IIS 8.0
- Windows Server 2012 R2의 IIS 8.5
- WINDOWS SERVER 2016 IIS 10.0
제품 - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
- IIS Express 7.5, IIS Express 8.0, IIS Express 10.0
헤더 Httpserv.h

참고 항목

ICacheProvider 인터페이스