Classe CComObjectNoLock
Essa classe implementa IUnknown
para um objeto não agregado, mas não incrementa a contagem de bloqueio de módulo no construtor.
Sintaxe
template<class Base>
class CComObjectNoLock : public Base
Parâmetros
Base
Sua classe, derivada de CComObjectRoot ou CComObjectRootEx, bem como de qualquer outra interface que você deseja dar suporte no objeto.
Membros
Construtores públicos
Nome | Descrição |
---|---|
CComObjectNoLock::CComObjectNoLock | Construtor. |
CComObjectNoLock::~CComObjectNoLock | O destruidor. |
Métodos públicos
Nome | Descrição |
---|---|
CComObjectNoLock::AddRef | Incrementa a contagem de referência no objeto. |
CComObjectNoLock::QueryInterface | Retorna um ponteiro para a interface solicitada. |
CComObjectNoLock::Release | Diminui a contagem de referência no objeto. |
Comentários
CComObjectNoLock
é semelhante a CComObject pois implementa IUnknown para um objeto não agregado, no entanto, CComObjectNoLock
não incrementa a contagem de bloqueio de módulo no construtor.
ATL usa CComObjectNoLock
internamente para fábricas de classe. Em geral, você não usará essa classe diretamente.
Hierarquia de herança
Base
CComObjectNoLock
Requisitos
Cabeçalho: atlcom.h
CComObjectNoLock::AddRef
Incrementa a contagem de referência no objeto.
STDMETHOD_(ULONG, AddRef)();
Valor de retorno
Um valor que pode ser útil para diagnóstico ou teste.
CComObjectNoLock::CComObjectNoLock
O construtor . Ao contrário de CComObject, não incrementa a contagem de bloqueio do módulo.
CComObjectNoLock(void* = NULL);
Parâmetros
void*
[in] Esse parâmetro sem nome não é usado. Há por simetria com outros CComXXXObjectXXX
construtores .
CComObjectNoLock::~CComObjectNoLock
O destruidor.
~CComObjectNoLock();
Comentários
Libera todos os recursos alocados e chama FinalRelease.
CComObjectNoLock::QueryInterface
Recupera um ponteiro para a interface solicitada.
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
Parâmetros
iid
[in] O identificador da interface sendo solicitada.
ppvObject
[out] Um ponteiro para o ponteiro da interface identificado por iid. Se o objeto não der suporte a essa interface, o ppvObject será definido como NULL.
Valor de retorno
Um valor HRESULT padrão.
CComObjectNoLock::Release
Diminui a contagem de referência no objeto.
STDMETHOD_(ULONG, Release)();
Valor de retorno
Em builds de depuração, Release
retorna um valor que pode ser útil para diagnóstico ou teste. Em builds que não sejam de depuração, o Release
sempre retorna 0.