Condividi tramite


Metodo IHttpCacheSpecificData::ResetTTL

Reimposta l'impostazione TTL (Time-to-Live) dei dati memorizzati nella cache.

Sintassi

virtual VOID ResetTTL(  
   VOID  
) = 0;  

Parametri

Questo metodo non accetta parametri.

Thread safety

Le classi che implementano l'interfaccia IHttpCacheSpecificData sono thread-safe per i metodi DecrementTTL e ResetTTL .

Commenti

La durata (TTL) viene usata per determinare quando i dati memorizzati nella cache non sono più validi e, pertanto, quando devono essere ricaricati. La maggior parte delle IHttpCacheSpecificData implementazioni imposta un conteggio interno iniziale su un valore positivo e quindi consente di ridurre tale conteggio tramite chiamate successive al DecrementTTL metodo . Se il valore TTL diventa 0, i dati devono essere ricaricati.

Il comportamento del ResetTTL metodo è specifico dell'implementazione. È consigliabile usare le informazioni seguenti come linea guida, ma potrebbe non essere corretta in tutti gli scenari:

  • Le classi che implementano le IHttpCacheSpecificData interfacce o IHttpTokenEntry inizializzano il conteggio interno su 2 in fase di costruzione e decrementano il conteggio di 1 per ogni chiamata a DecrementTTL.

  • Le classi che implementano l'interfaccia IHttpFileInfo sono diverse. Alcune classi implementano lo schema definito in precedenza, mentre altre eseguono operazioni vuote su e ResetTTLDecrementTTL.

Note per gli implementatori

Le implementazioni del DecrementTTL metodo e ResetTTL devono essere thread-safe per un IHttpCacheSpecificData puntatore.

Note per i chiamanti

La maggior parte dei chiamanti può ignorare il ResetTTL metodo perché questo metodo deve essere utilizzato internamente.

Esempio

Nell'esempio di codice seguente viene illustrata una classe denominata MySpecificData che implementa i IHttpCacheSpecificData metodi .

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;  
};  

Requisiti

Tipo Descrizione
Client - IIS 7.0 in Windows Vista
- IIS 7.5 in Windows 7
- IIS 8.0 in Windows 8
- IIS 10.0 in Windows 10
Server - IIS 7.0 in Windows Server 2008
- IIS 7.5 in Windows Server 2008 R2
- IIS 8.0 in Windows Server 2012
- IIS 8.5 in Windows Server 2012 R2
- IIS 10.0 in Windows Server 2016
Prodotto - 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
Intestazione Httpserv.h

Vedere anche

Interfaccia IHttpCacheSpecificData