次の方法で共有


IHostThreadPoolManager

更新 : 2007 年 11 月

共通言語ランタイム (CLR: Common Language Runtime) がスレッド プールを構成し、そのスレッド プールに作業項目のキューを配置できるようにするメソッドを提供します。

interface IHostThreadpoolManager : IUnknown {
    HRESULT GetAvailableThreads ( 
        [out] DWORD *pdwAvailableWorkerThreads
    );
    HRESULT GetMaxThreads ( 
        [out] DWORD *pdwMaxThreads
    );
    HRESULT GetMinThreads ( 
        [out] DWORD *MinThreads
    );
    HRESULT QueueUserWorkItem ( 
        [in] LPTHREAD_START_ROUTINE Function,
        [in] PVOID Context,
        [in] ULONG Flags
    );
    HRESULT SetMaxThreads (
        [in] DWORD MaxThreads
    );
    HRESULT SetMinThreads (
        [in] DWORD MinThreads
    );
};

メソッド

メソッド

説明

IHostThreadPoolManager::GetAvailableThreads メソッド

現在作業項目を処理していない、スレッド プール内のスレッドの数を取得します。

IHostThreadPoolManager::GetMaxThreads メソッド

ホストがスレッド プールに同時に保持するスレッドの最大数を取得します。

IHostThreadPoolManager::GetMinThreads メソッド

ホストが要求に応じるために保持する必要があるアイドル スレッドの最小数を取得します。

IHostThreadPoolManager::QueueUserWorkItem メソッド

実行のために関数をキューに配置し、その関数で使用されるデータを格納しているオブジェクトを提供します。

IHostThreadPoolManager::SetMaxThreads メソッド

ホストがスレッド プールに保持できるスレッドの最大数を設定します。

IHostThreadPoolManager::SetMinThreads メソッド

ホストが要求に応じるために保持する必要があるアイドル スレッドの最小数を設定します。

解説

ホストは、SetMaxThreads メソッドおよび SetMinThreads メソッドの呼び出しに指定された値を使用してスレッド プールを構成する必要はありません。この場合、ホストはこれらのメソッドから HRESULT 値 E_NOTIMPL を返します。

必要条件

プラットフォーム : 「.NET Framework システム要件」を参照

ヘッダー : MSCorEE.idl

ライブラリ : MSCorEE.dll にリソースとして格納されていること

.NET Framework のバージョン : 3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

参照

参照

System.Threading

ThreadPool

その他の技術情報

ホスト インターフェイス