次の方法で共有


CComAutoThreadModule クラス

ATL 7. 0 のCComAutoThreadModuleされていません。参照してくださいATL モジュール クラスの詳細。

template<
   class ThreadAllocator = CComSimpleThreadAllocator 
>
class CComAutoThreadModule :
   public CComModule

パラメーター

解説

注意

このクラスは、互換性のために残されています。実際には、CAtlAutoThreadModuleCAtlModule の各派生クラスに置き換えられています。 以下は、ATL の旧リリース用の説明です。

CComAutoThreadModule は、CComModule の派生クラスで、EXE と Windows サービス用のスレッド プール アパートメント モデル COM サーバーを実装します。 CComAutoThreadModuleCComApartment を使用して、モジュール内のスレッド単位でアパートメントを管理します。

複数のアパートメントにオブジェクトを作成するときは、CComAutoThreadModule からモジュールを派生します。 また、オブジェクトのクラス定義に DECLARE_CLASSFACTORY_AUTO_THREAD マクロをインクルードして、CComClassFactoryAutoThread をクラス ファクトリとして指定する必要があります。

既定では、ATL COM AppWizard (Visual Studio .NET の ATL プロジェクト ウィザード) は CComModule からモジュールを派生します。 CComAutoThreadModule を使用するには、クラス定義を変更します。 次に例を示します

class CMyModule : 
public CComAutoThreadModule<CComSimpleThreadAllocator>
{
public:
   LONG Unlock()
   {
      LONG l = CComAutoThreadModule<CComSimpleThreadAllocator>::Unlock();
      if (l == 0)
         PostThreadMessage(dwThreadID, WM_QUIT, 0, 0);
      return l;
   }

   DWORD dwThreadID;
};

必要条件

**ヘッダー:**atlbase.h

参照

参照

ATL モジュール クラス

その他の技術情報

CComAutoThreadModule のメンバー

ATL クラスの概要