Freigeben über


IHttpStoredContext::CleanupStoredContext-Methode

Bereinigt den gespeicherten Kontext.

Syntax

virtual VOID CleanupStoredContext(  
   VOID  
) = 0;  

Parameter

Diese Methode nimmt zwei Parameter entgegen.

Bemerkungen

Das Verhalten dieser Methode hängt von der Implementierung ab. Sie sollten die folgenden Informationen als Richtlinie verwenden, aber sie sind möglicherweise nicht in allen Szenarien korrekt:

  • Einige Implementierungen führen während der CleanupStoredContext -Methode einen leeren Vorgang aus.

  • Einige Implementierungen rufen delete``this den aktuellen IHttpStoredContext-Zeiger auf.

  • Einige Implementierungen verwenden die interne Verweiszählung und verringern eine interne Verweisanzahl während jedes Aufrufs von CleanupStoredContext. Diese Implementierer rufen delete``this sofort für den aktuellen IHttpStoredContext auf, wenn die Verweisanzahl auf 0 geht.

Hinweise für Implementierer

IHttpStoredContext Implementierer sollten entweder protected oder private``virtual Destruktoren erstellen, da ein IHttpStoredContext Zeiger zum Löschen nicht auf seine spezifischste Klasse herabgestuft werden sollte. Stattdessen sollte das Löschen dieser Implementierungen von jedem Zeiger intern gesteuert und während eines Aufrufs CleanupStoredContextvon behandelt werden.

Hinweise für Aufrufer

Die CleanupStoredContext -Methode sollte nur einmal für einen IHttpStoredContext Zeiger aufgerufen werden, da einige Implementierungen aufrufen delete``this , wenn CleanupStoredContext aufgerufen wird. Wenn Sie bei den meisten Zeigern IHttpStoredContext mehr als einmal aufrufenCleanupStoredContext, wird entweder eine Zugriffsverletzungs-Ausnahme ausgelöst oder Daten im Arbeitsspeicher beschädigt.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie Sie eine IHttpStoredContext Klasse mit dem Namen MyStoredContext erstellen und das Löschen eines MyStoredContext Zeigers intern steuern. MyStoredContext implementiert nur einen private Destruktor und ruft diesen Destruktor auf, wenn die CleanupStoredContext -Methode aufgerufen wird.

// The MyStoredContext class implements the IHttpStoredContext  
// interface and demonstrates one possible solution for  
// implementing the CleanupStoredContext method.  
class MyStoredContext : public IHttpStoredContext  
{  
public:  
    // The MyStoredContext method is the public   
    // constructor for the MyStoredContext class.  
    MyStoredContext()  
    {  
  
    }  
  
    // The CleanupStoredContext method must be implemented  
    // by non-abstract classes that implement the   
    // IHttpStoredContext interface. This method   
    // calls delete this.  
    virtual void CleanupStoredContext(VOID)  
    {  
        delete this;  
    }  
  
private:  
    // The MyStoredContext method is the private virtual  
    // destructor for the MyStoredContext class.  
    virtual ~MyStoredContext()  
    {  
  
    }  
};  

Anforderungen

type BESCHREIBUNG
Client – IIS 7.0 unter Windows Vista
– IIS 7.5 unter Windows 7
– IIS 8.0 unter Windows 8
– IIS 10.0 unter Windows 10
Server – IIS 7.0 unter Windows Server 2008
– IIS 7.5 unter Windows Server 2008 R2
– IIS 8.0 unter Windows Server 2012
– IIS 8.5 unter Windows Server 2012 R2
– IIS 10.0 unter Windows Server 2016
Produkt – 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
Header Httpserv.h

Weitere Informationen

IHttpStoredContext-Schnittstelle