CAtlAutoThreadModuleT クラス

このクラスは、スレッド プール、アパートメント モデル COM サーバーを実装するためのメソッドを備えています。

重要

このクラスとそのメンバーは、Windows ランタイムで実行するアプリケーションで使用することはできません。

構文

template <class T,
         class ThreadAllocator = CComSimpleThreadAllocator,
         DWORD dwWait = INFINITE>
class ATL_NO_VTABLE CAtlAutoThreadModuleT : public IAtlAutoThreadModule

パラメーター

T
COM サーバーを実装するクラス。

ThreadAllocator
スレッドの選択を管理するクラス。 既定値は、CComSimpleThreadAllocator です。

dwWait
タイムアウト間隔をミリ秒単位で指定します。 既定値は INFINITE です。これは、メソッドのタイム アウト間隔が経過しないことを意味します。

メンバー

パブリック メソッド

名前 説明
CAtlAutoThreadModuleT::GetDefaultThreads この静的関数は、プロセッサの数に基づいて、EXE モジュールのスレッドの最大数を動的に計算して返します。

解説

クラス CAtlAutoThreadModule は、スレッド プール、アパートメント モデル COM サーバーを実装するために、CAtlAutoThreadModuleT から派生します。 これは、古いクラス CComAutoThreadModule に置き換わるものです。

Note

DLL がアンロードされると、INFINITE の既定の dwWait 値がデッドロックを引き起こすため、このクラスを DLL で使用することはできません。

継承階層

IAtlAutoThreadModule

CAtlAutoThreadModuleT

必要条件

ヘッダー: atlbase.h

CAtlAutoThreadModuleT::GetDefaultThreads

この静的関数は、プロセッサの数に基づいて、EXE モジュールのスレッドの最大数を動的に計算して返します。

static int GetDefaultThreads();

戻り値

EXE モジュールで作成されるスレッドの数。

解説

スレッドの数の計算に別の方法を使用する場合は、このメソッドをオーバーライドします。 既定では、スレッドの数はプロセッサの数に基づきます。

関連項目

IAtlAutoThreadModule クラス
クラスの概要
IAtlAutoThreadModule クラス
モジュール クラス