IHttpCacheSpecificData::ResetTTL, méthode
Réinitialise le paramètre Durée de vie (TTL) des données mises en cache.
Syntaxe
virtual VOID ResetTTL(
VOID
) = 0;
Paramètres
Cette méthode ne prend aucun paramètre.
Cohérence de thread
Les classes qui implémentent l’interface IHttpCacheSpecificData sont thread safe pour les méthodes DecrementTTL et ResetTTL
.
Remarques
La durée de vie est utilisée pour déterminer quand les données mises en cache ne sont plus valides et, par conséquent, quand ces données doivent être rechargées. La plupart des IHttpCacheSpecificData
implémentations définissent un nombre interne initial sur une valeur positive, puis permettent de réduire ce nombre par des appels successifs à la DecrementTTL
méthode. Si la valeur TTL devient 0, les données doivent être rechargées.
Le comportement de la ResetTTL
méthode est spécifique à l’implémentation. Vous devez utiliser les informations suivantes comme ligne directrice, mais elles peuvent ne pas être correctes dans tous les scénarios :
Les classes qui implémentent les
IHttpCacheSpecificData
interfaces ou IHttpTokenEntry initialisent le nombre interne sur 2 au moment de la construction, et décrémentent qui comptent par 1 à chaque appel àDecrementTTL
.Les classes qui implémentent l’interface IHttpFileInfo sont variées. Certaines classes implémentent le schéma défini ci-dessus, tandis que d’autres effectuent des opérations vides sur et
ResetTTL
DecrementTTL
.
Remarques pour les implémenteurs
Les DecrementTTL
implémentations de la méthode et ResetTTL
doivent être thread safe pour un IHttpCacheSpecificData
pointeur.
Remarques pour les appelants
La plupart des appelants peuvent ignorer la ResetTTL
méthode, car cette méthode est destinée à être utilisée en interne.
Exemple
L’exemple de code suivant illustre une classe appelée MySpecificData
qui implémente les IHttpCacheSpecificData
méthodes.
class MySpecificData : public IHttpCacheSpecificData
{
public:
MySpecificData()
{
m_ttl = 2;
}
virtual ~MySpecificData()
{
m_ttl = 0;
}
virtual VOID ResetTTL(VOID)
{
m_ttl = 2;
}
virtual VOID DecrementTTL(BOOL* pfTTLExpired)
{
*pfTTLExpired = (InterlockedDecrement(&m_ttl) == 0);
}
private:
LONG m_ttl;
};
Spécifications
Type | Description |
---|---|
Client | - IIS 7.0 sur Windows Vista - IIS 7.5 sur Windows 7 - IIS 8.0 sur Windows 8 - IIS 10.0 sur Windows 10 |
Serveur | - IIS 7.0 sur Windows Server 2008 - IIS 7.5 sur Windows Server 2008 R2 - IIS 8.0 sur Windows Server 2012 - IIS 8.5 sur Windows Server 2012 R2 - IIS 10.0 sur Windows Server 2016 |
Produit | - 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 |
En-tête | Httpserv.h |