共用方式為


IHttpCacheSpecificData::ResetTTL 方法

重設快取資料的存留時間 (TTL) 設定。

語法

virtual VOID ResetTTL(  
   VOID  
) = 0;  

參數

此方法不會採用任何參數。

執行緒安全性

實作 IHttpCacheSpecificData 介面的類別是 DecrementTTLResetTTL 方法的執行緒安全。

備註

TTL 可用來判斷快取的資料何時不再有效,因此,應該重載該資料的時間。 大部分 IHttpCacheSpecificData 的實作會將初始內部計數設定為正值,然後允許透過對 方法的後續呼叫 DecrementTTL 來減少該計數。 如果 TTL 值變成 0,則應該重載資料。

方法的行為是實作 ResetTTL 特定的。 您應該使用下列資訊作為指導方針,但在所有案例中可能都不正確:

  • 實作 或IHttpTokenEntry介面的 IHttpCacheSpecificData 類別會在建構時將內部計數初始化為 2,並在每次呼叫 DecrementTTL 時將計數遞減 1。

  • 實作 IHttpFileInfo 介面的類別會有所不同。 某些類別會實作上述定義的配置,而其他類別則會在 和 DecrementTTLResetTTL 執行空白作業。

實作者的注意事項

DecrementTTLResetTTL 方法實作必須是指標的 IHttpCacheSpecificData 執行緒安全。

來電者的附注

大部分的呼叫端可能會忽略 方法, ResetTTL 因為這個方法是要在內部使用。

範例

下列程式碼範例示範實作 IHttpCacheSpecificData 方法的類別 MySpecificData

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

規格需求

類型 描述
Client - 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

另請參閱

IHttpCacheSpecificData 介面