Поделиться через


Метод ICacheProvider::SetCacheRecord

Задает данные, относящиеся к кэшу, в поставщике кэша.

Синтаксис

virtual VOID SetCacheRecord(  
   IHttpCacheSpecificData* pCacheRecord  
) = 0;  

Параметры

pCacheRecord
Указатель на значение IHttpCacheSpecificData .

Комментарии

Параметр pCacheRecord не должен иметь значение NULL, так как последующие внутренние вызовы метода GetCacheRecord могут привести к нарушению доступа.

Важно!

Метод SetCacheRecord является частью инфраструктуры IIS и не предназначен для использования непосредственно из кода.

Примечания для разработчиков

Средства реализации ICacheProvider объявляют private``IHttpCacheSpecificData указатель как данные-члены. При вызове конструкторов этих средств реализации эти данные-члены назначаются указателю IHttpCacheSpecificData . Перед вызовом SetCacheRecordвызывающий объект отвечает за первый вызов IHttpCacheSpecificData::ReferenceCacheData для IHttpCacheSpecificData указателя; SetCacheRecord затем реализующие средства присваивают переменной private этому IHttpCacheSpecificData указателю.

При SetCacheRecord вызове метода реализации должны сначала проверка, имеет ли текущий private указатель элемента, отличный от NULL. private Если данные не равно NULL, сначала вызовите метод IHttpCacheSpecificData::D ereferenceCacheData для этих текущих данных, чтобы их можно было освободить, но затем всегда присваивайте private переменную параметру pCacheRecord .

В следующей таблице приведен пример сопоставлений интерфейсов "один к одному", которые должны быть возвращены из GetCacheKey и GetCacheRecord методов из того же реализующего ICacheProvider интерфейса.

Интерфейс GetCacheKey Интерфейс GetCacheRecord
IFileKey IHttpFileInfo
IHttpTokenKey IHttpTokenEntry
IHttpCacheKey IHttpCacheSpecificData

Примечания для абонентов

ICacheProvider средства реализации берут на IHttpCacheSpecificData себя право владения указателем. Перед вызовом SetCacheRecordсначала вызовите IHttpCacheSpecificData::ReferenceCacheData указатель, чтобы у этого указателя был один владелец.

Требования

Тип Описание
клиент — IIS 7.0 в Windows Vista
— IIS 7.5 в Windows 7
— IIS 8.0 в Windows 8
— IIS 10.0 в Windows 10
Сервер — IIS 7.0 в Windows Server 2008
— IIS 7.5 в Windows Server 2008 R2
— IIS 8.0 в Windows Server 2012
— IIS 8.5 в Windows Server 2012 R2
— IIS 10.0 в Windows Server 2016
Продукт — 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