CComObjectNoLock 類別
這個類別會 IUnknown
針對非匯總物件實作,但不會遞增建構函式中的模組鎖定計數。
語法
template<class Base>
class CComObjectNoLock : public Base
參數
Base
您的類別衍生自 CComObjectRoot 或 CComObjectRootEx,以及您想要在 物件上支援的任何其他介面。
成員
公用建構函式
名稱 | 描述 |
---|---|
CComObjectNoLock::CComObjectNoLock | 建構函式。 |
CComObjectNoLock::~CComObjectNoLock | 解構函式。 |
公用方法
名稱 | 描述 |
---|---|
CComObjectNoLock::AddRef | 遞增 對象的參考計數。 |
CComObjectNoLock::QueryInterface | 傳回所要求介面的指標。 |
CComObjectNoLock::Release | 遞減 對象的參考計數。 |
備註
CComObjectNoLock
類似於 CComObject,因為它會針對非匯總對象實作 IUnknown;不過,CComObjectNoLock
不會遞增建構函式中的模組鎖定計數。
ATL 會在內部針對類別處理站使用 CComObjectNoLock
。 一般而言,您不會直接使用此類別。
繼承階層架構
Base
CComObjectNoLock
需求
標頭: atlcom.h
CComObjectNoLock::AddRef
遞增 對象的參考計數。
STDMETHOD_(ULONG, AddRef)();
傳回值
對於診斷或測試而言可能很有用的值。
CComObjectNoLock::CComObjectNoLock
建構函式。 不同於 CComObject,不會遞增模組鎖定計數。
CComObjectNoLock(void* = NULL);
參數
不合法*
[in]不使用這個未命名的參數。 它存在於與其他 CComXXXObjectXXX
建構函式的對稱性。
CComObjectNoLock::~CComObjectNoLock
解構函式。
~CComObjectNoLock();
備註
釋放所有已配置的資源,並呼叫 FinalRelease。
CComObjectNoLock::QueryInterface
擷取所要求介面的指標。
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
參數
iid
[in] 所要求介面的識別碼。
ppvObject
[out]由 iid 識別之介面指標的指標。 如果物件不支持這個介面, ppvObject 會設定為 NULL。
傳回值
標準 HRESULT 值。
CComObjectNoLock::Release
遞減 對象的參考計數。
STDMETHOD_(ULONG, Release)();
傳回值
在偵錯組建中, Release
傳回可能對診斷或測試很有用的值。 在非偵錯組建中, Release
一律會傳回 0。