CComGlobalsThreadModel
呼叫適當的執行緒模型,不論使用的執行緒模型。
#if defined( _ATL_SINGLE_THREADED )
typedef CComSingleThreadModel CComGlobalsThreadModel;
#elif defined( _ATL_APARTMENT_THREADED )
typedef CComMultiThreadModel CComGlobalsThreadModel;
#elif defined( _ATL_FREE_THREADED )
typedef CComMultiThreadModel CComGlobalsThreadModel;
#else
#pragma message ("No global threading model defined")
#endif
備註
根據您的應用程式使用的執行緒模型, typedef 名稱 CComGlobalsThreadModel 參考 CComSingleThreadModel 或 CComMultiThreadModel。 這些類別會提供其他 typedef 名稱參考關鍵區段類別。
注意事項 |
---|
CComGlobalsThreadModel 不參考類別 CComMultiThreadModelNoCS。 |
使用 CComGlobalsThreadModel 從指定特定執行緒模型類別可以讓您。 不論使用的執行緒模型中,適當的方法將會呼叫。
除了之外, CComGlobalsThreadModelATL 提供 typedef 名稱 CComObjectThreadModel。 每個 typedef 參考的類別取決於執行緒模型使用,如下表所示:
typedef |
單一執行緒 |
Apartment 執行緒 |
無限制執行緒 |
---|---|---|---|
CComObjectThreadModel |
S |
S |
M |
CComGlobalsThreadModel |
S |
M |
M |
S=CComSingleThreadModel;M=CComMultiThreadModel
用於在單一物件類別內的 CComObjectThreadModel 。 使用 CComGlobalsThreadModel 在以全域方式提供給您程式中的物件,或者,如果您不希望在多執行緒處理的模組資源。
需求
Header: atlbase.h