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