#if defined (_ATL_SINGLE_THREADED)
特価;typedef CComSingleThreadModel CComGlobalsThreadModel;(&N)
定義 #elif (_ATL_APARTMENT_THREADED)
特価;typedef CComMultiThreadModel CComGlobalsThreadModel;(&N)
# 他
特価;typedef CComMultiThreadModel CComGlobalsThreadModel;(&N)
#endif
あなたのアプリケーションで使用されるスレッド モデルによって、 typedef名CComGlobalsThreadModel CComSingleThreadModelまたはCComMultiThreadModelのいずれかを参照します。これらのクラスは、クリティカル セクション クラスを参照するには追加のtypedef名を提供します。
注特価;CComGlobalsThreadModelクラスCComMultiThreadModelNoCSを参照していません(&N)。
CComGlobalsThreadModelを使用して、特定のスレッド モデルのクラスを指定からを解放します。使用されているスレッド モデルに関係なく、該当のメソッドが呼び出されます。
CComGlobalsThreadModelに加え、ATL typedef名CComObjectThreadModelを提供します。次の表に示すように使用、スレッド モデルの各typedefで参照されるクラスを依存します。:
| スレッド モデル | |||
| typedef | 1 つ | アパート | 無料 |
| CcomObjectThreadModel | S | S | M |
| CcomGlobalsThreadModel | S | M | M |
S =CComSingleThreadModel;M =CComMultiThreadModel
CComObjectThreadModelを内の 1 つのオブジェクト クラスを使用します。オブジェクトがグローバルに使用できるプログラム、または複数のスレッド間でのモジュールのリソースを保護したいときにCComGlobalsThreadModelを使用します。
#include lt;atlbase.h>
参照特価;CComObjectRootEx(&N)