Método IHttpStoredContext::CleanupStoredContext
Limpa o contexto armazenado.
Sintaxe
virtual VOID CleanupStoredContext(
VOID
) = 0;
Parâmetros
Este método não aceita parâmetros.
Comentários
O comportamento desse método depende da implementação. Você deve usar as seguintes informações como uma diretriz, mas elas podem não estar corretas em todos os cenários:
Algumas implementações executam uma operação vazia durante o
CleanupStoredContext
método .Algumas implementações chamam
delete``this
no ponteiro IHttpStoredContext atual.Algumas implementações usam a contagem de referência interna e decrementam uma contagem de referência interna durante cada chamada para
CleanupStoredContext
. Esses implementadores chamarãodelete``this
no atualIHttpStoredContext
imediatamente se essa contagem de referência for para 0.
Notas para implementadores
IHttpStoredContext
Os implementadores devem criar protected
destruidores ou private``virtual
, pois um IHttpStoredContext
ponteiro não deve ser reduzido para sua classe mais específica para exclusão. Em vez disso, a exclusão desses implementadores deve ser controlada por cada ponteiro internamente e tratada durante uma chamada para CleanupStoredContext
.
Observações para chamadores
O CleanupStoredContext
método deve ser chamado apenas uma vez em um IHttpStoredContext
ponteiro, porque algumas implementações chamam delete``this
quando CleanupStoredContext
é chamado. Chamar CleanupStoredContext
mais de uma vez na maioria IHttpStoredContext
dos ponteiros gerará uma exceção de violação de acesso ou corromperá dados na memória.
Exemplo
O exemplo de código a seguir demonstra como criar uma IHttpStoredContext
classe chamada MyStoredContext
e controlar a exclusão de um MyStoredContext
ponteiro internamente. MyStoredContext
implementa apenas um private
destruidor e chama esse destruidor quando o CleanupStoredContext
método é chamado.
// 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()
{
}
};
Requisitos
Type | Descrição |
---|---|
Cliente | – IIS 7.0 no Windows Vista – IIS 7.5 no Windows 7 – IIS 8.0 no Windows 8 – IIS 10.0 no Windows 10 |
Servidor | – IIS 7.0 no Windows Server 2008 – IIS 7.5 no Windows Server 2008 R2 – IIS 8.0 no Windows Server 2012 – IIS 8.5 no Windows Server 2012 R2 – IIS 10.0 no Windows Server 2016 |
Produto | - 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 |
parâmetro | Httpserv.h |