다음을 통해 공유


IHttpCacheSpecificData::ResetTTL 메서드

캐시된 데이터의 TTL(Time to Live) 설정을 다시 설정합니다.

구문

virtual VOID ResetTTL(  
   VOID  
) = 0;  

매개 변수

이 메서드는 매개 변수를 사용하지 않습니다.

스레드 보안

IHttpCacheSpecificData 인터페이스를 구현하는 클래스는 DecrementTTLResetTTL 메서드에 대해 스레드로부터 안전합니다.

설명

TTL은 캐시된 데이터가 더 이상 유효하지 않은 경우와 해당 데이터를 다시 로드해야 하는 시기를 확인하는 데 사용됩니다. 대부분의 IHttpCacheSpecificData 구현은 초기 내부 수를 양수 값으로 설정한 다음 메서드에 대한 연속 호출 DecrementTTL 을 통해 해당 수를 줄일 수 있도록 합니다. TTL 값이 0이 되면 데이터를 다시 로드해야 합니다.

메서드의 동작은 구현에 따라 ResetTTL 다릅니다. 다음 정보를 지침으로 사용해야 하지만 모든 시나리오에서 올바르지 않을 수 있습니다.

  • 또는 IHttpTokenEntry 인터페이스를 구현 IHttpCacheSpecificData 하는 클래스는 생성 시 내부 수를 2로 초기화하고 에 대한 각 호출DecrementTTL에서 1로 계산되는 수를 감소합니다.

  • IHttpFileInfo 인터페이스를 구현하는 클래스는 다양합니다. 일부 클래스는 위에서 정의한 체계를 구현하는 반면, 다른 클래스는 및 DecrementTTL모두에서 ResetTTL 빈 작업을 수행합니다.

구현자에 대한 참고 사항

ResetTTL 메서드 구현은 DecrementTTL 포인터에 대해 IHttpCacheSpecificData 스레드로부터 안전해야 합니다.

호출자 참고 사항

이 메서드는 ResetTTL 내부적으로 사용되기 때문에 대부분의 호출자는 메서드를 무시할 수 있습니다.

예제

다음 코드 예제에서는 메서드를 구현 하는 라는 MySpecificData 클래스를 보여 줍니다 IHttpCacheSpecificData .

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

요구 사항

형식 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

참고 항목

IHttpCacheSpecificData 인터페이스