ICacheProvider::SetCacheRecord 메서드
캐시 공급자의 캐시 관련 데이터를 설정합니다.
구문
virtual VOID SetCacheRecord(
IHttpCacheSpecificData* pCacheRecord
) = 0;
매개 변수
pCacheRecord
IHttpCacheSpecificData 값에 대한 포인터입니다.
설명
나중에 GetCacheRecord 메서드에 대한 내부 호출로 인해 액세스 위반이 발생할 수 있으므로 매개 변수는 pCacheRecord
NULL이 아니어야 합니다.
중요
메서드는 SetCacheRecord
IIS 인프라의 일부이며 코드에서 직접 사용할 수 없습니다.
구현자에 대한 참고 사항
ICacheProvider 구현자는 포인터를 private``IHttpCacheSpecificData
멤버 데이터로 선언합니다. 이러한 구현자의 생성자가 호출되면 이 멤버 데이터가 포인터에 IHttpCacheSpecificData
할당됩니다. 를 호출SetCacheRecord
하기 전에 호출자는 먼저 포인터 SetCacheRecord
에서 IHttpCacheSpecificData::ReferenceCacheDataIHttpCacheSpecificData
를 호출합니다. 구현자는 변수를 private
이 IHttpCacheSpecificData
포인터에 할당합니다.
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 |