ランタイム
Mix::Parallel::IManager Class Referenceabstract

並列マネージャインターフェース More...

#include <IManager.h>

Inheritance diagram for Mix::Parallel::IManager:
Collaboration diagram for Mix::Parallel::IManager:

Public Member Functions

virtual UInt32 GetThreadCount (void) const =0
 スレッド数を取得します More...
 
virtual HANDLE MapWorks (UInt32 numWork, Mix::Parallel::WORK *works)=0
 ワークをマップします More...
 
virtual Boolean UnmapWorks (HANDLE handle)=0
 ワークをアンマップします More...
 
virtual Boolean ExecuteFunction (UInt32 threadNum, FunctionPtr pFunc, void *pData, UInt32 debugID=Mix::Parallel::DEBUG_USER)=0
 指定した数のスレッドを使用してファンクションを実行します More...
 
virtual const Mix::Parallel::DEBUG_THREAD_INFODebug_GetThreadInfo (UInt32 threadIndex) const =0
 デバッグ : スレッドの情報を取得します More...
 
- Public Member Functions inherited from Mix::Reference
void AddRef (void)
 参照数を 1 増やします More...
 
void Release (void)
 参照数を 1 減らします More...
 
Long32 GetRefCount (void)
 参照数を取得します More...
 

Protected Member Functions

virtual ~IManager (void)
 デストラクタ More...
 
- Protected Member Functions inherited from Mix::Reference
 MIX_DECLARE_ALLOCATOR ()
 
 Reference (void)
 コンストラクタ More...
 
 Reference (Long32 count)
 コンストラクタ More...
 
virtual ~Reference (void)
 デストラクタ More...
 

Detailed Description

並列マネージャインターフェース

Constructor & Destructor Documentation

virtual Mix::Parallel::IManager::~IManager ( void  )
inlineprotectedvirtual

デストラクタ

Member Function Documentation

virtual UInt32 Mix::Parallel::IManager::GetThreadCount ( void  ) const
pure virtual

スレッド数を取得します

Returns
スレッド数を返します
virtual HANDLE Mix::Parallel::IManager::MapWorks ( UInt32  numWork,
Mix::Parallel::WORK works 
)
pure virtual

ワークをマップします

Parameters
[in]numWorkワークの数
[in]worksマップするワークを表す Mix::Parallel::WORK 構造体の配列
Returns
成功した場合は、マップしたワークのハンドルを返します
Note
バックグラウンドで動作するファンクションを登録します。
また、ウェイクアップ用同期オブジェクトを共有しているワークは並列で処理されますが、
同期オブジェクトが異なるワーク同士、 Mix::Parallel::ExecuteFunction にて実行されるファンクションは同期して実行されます。
virtual Boolean Mix::Parallel::IManager::UnmapWorks ( HANDLE  handle)
pure virtual

ワークをアンマップします

Parameters
[in]handleアンマップするワークのハンドル
Returns
成功した場合は True を返します
virtual Boolean Mix::Parallel::IManager::ExecuteFunction ( UInt32  threadNum,
FunctionPtr  pFunc,
void *  pData,
UInt32  debugID = Mix::Parallel::DEBUG_USER 
)
pure virtual

指定した数のスレッドを使用してファンクションを実行します

Parameters
[in]threadNum使用するスレッド数
[in]pFunc実行するファンクションのポインタ
[in]pData実行するファンクションに渡すデータのポインタ
[in]debugIDデバッグ用識別子 ( Mix::Parallel::DEBUG_ID )
Returns
成功した場合は True を返します
Note
使用するスレッド数 ( threadNum ) に 0 を指定した場合は、1 を指定したとみなします。
また、最大スレッド数 ( GetThreadCount ) を超えた場合は、飽和されます。
virtual const Mix::Parallel::DEBUG_THREAD_INFO& Mix::Parallel::IManager::Debug_GetThreadInfo ( UInt32  threadIndex) const
pure virtual

デバッグ : スレッドの情報を取得します

Parameters
[in]threadIndexスレッドのインデックス
Returns
スレッドの情報を表す Mix::Parallel::DEBUG_THREAD_INFO 構造体を返します

The documentation for this class was generated from the following file: