WIL説明書(C++)
3.0.0
|
スレッドクラス [詳解]
スレッドクラス
namespace FVCL
簡易的なスレッド機構を提供します。
公開メンバ関数 | |
CFvThread () | |
コンストラクタ [詳解] | |
CFvThread (const CFvThread &src) | |
コピーコンストラクタ [詳解] | |
CFvThread (ThreadHandler function, void *param) | |
初期値指定コンストラクタ [詳解] | |
CFvThread & | operator= (const CFvThread &src) |
代入オペレータ [詳解] | |
bool | operator== (const CFvThread &src) const |
比較オペレータ(==) [詳解] | |
bool | operator!= (const CFvThread &src) const |
比較オペレータ(!=) [詳解] | |
virtual void | Start (INT num=0) |
スレッドの開始 [詳解] | |
virtual void | Stop () |
スレッドの停止 [詳解] | |
virtual bool | IsBusy () const |
スレッドの実行状態 [詳解] | |
virtual bool | Wait (INT timeout=3000, INT status=FVCL::ThreadStatus::SLEEP) const |
待機 [詳解] | |
virtual bool | SafeSleep (INT timeout) const |
スリープ [詳解] | |
公開変数類 | |
UINT | UserID |
識別子 [詳解] | |
ThreadHandler | UserProc |
コールバック関数 [詳解] | |
void * | UserProcParam |
コールバック関数へ渡す引数 [詳解] | |
INT | ThreadOrder |
スレッドへの要求 [詳解] | |
INT | ThreadStatus |
スレッドの状態 [詳解] | |
INT | ThreadLoopCount |
スレッドの繰り返し回数 [初期値:0、範囲:0~] [詳解] | |
INT | ThreadLoopMax |
スレッドの繰り返し上限 [初期値:0、範囲:0=無限, 1~=有限] [詳解] | |
限定公開メンバ関数 | |
virtual bool | ThreadProc () |
スレッド関数 (スタブ) [詳解] | |
静的限定公開メンバ関数 | |
static UINT | _ThreadKicker (void *pvParam) |
周期処理 [詳解] | |
限定公開変数類 | |
HANDLE | m_hThread |
スレッドハンドル [詳解] | |
UINT | m_ThreadID |
スレッドID [詳解] | |
FVCL::CFvThread::CFvThread | ( | ) |
コンストラクタ
標準のコンストラクタです。
FVCL::CFvThread::CFvThread | ( | const CFvThread & | src | ) |
コピーコンストラクタ
同一クラスの内容を複製してインスタンスを構築します。
[in] | src | 複製元 |
FVCL::CFvThread::CFvThread | ( | ThreadHandler | function, |
void * | param | ||
) |
初期値指定コンストラクタ
初期値を指定してインスタンスを構築します。
[in] | function | コールバック関数 |
[in] | param | コールバック関数に渡す引数 |
FVCL::CFvThread::operator= | ( | const CFvThread & | src | ) |
代入オペレータ
同一クラスのオブジェクトの内容を複製して、自身に代入します。
[in] | src | 複製元 |
FVCL::CFvThread::operator== | ( | const CFvThread & | src | ) | const |
比較オペレータ(==)
同一クラスのオブジェクトの内容と比較します。
[in] | src | 比較対象 |
true | 一致 |
false | 不一致 |
FVCL::CFvThread::operator!= | ( | const CFvThread & | src | ) | const |
比較オペレータ(!=)
同一クラスのオブジェクトの内容と比較します。
[in] | src | 比較対象 |
true | 不一致 |
false | 一致 |
|
virtual |
スレッドの開始
待機中のスレッドを開始します。
[in] | num | 実行回数 [0:無限、1~:有限] |
|
virtual |
スレッドの停止
実行中のスレッドを停止します。
|
virtual |
スレッドの実行状態
true | 実行中です。 |
false | 停止または破棄されています。 |
|
virtual |
待機
スレッドの状態(ThreadStatus)が引数に指定した status になるまで待機します。
[in] | timeout | 待機時間 (msec) [-1:無限、0~:有限] |
[in] | status | 監視するステータス |
|
virtual |
スリープ
指定された時間が経過するか、このスレッドが停止されるまで待機します。
[in] | timeout | 待機時間 (msec) [-1:無限、0~:有限] |
true | 正常終了 |
false | 中断されました。 |
|
staticprotected |
周期処理
スレッド関数を周期的に呼び出す関数です。 この関数がスレッドに登録されています。 Start / Stop メソッドによって周期処理が開始/停止されます。
|
protectedvirtual |
スレッド関数 (スタブ)
この関数は _ThreadKicker からコールされるインスタンスメンバです。 このクラスでは内部処理は実装しておらず常に false を返します。 このクラスを継承して独自のスレッドクラスを作成する場合は、 このメソッドをオーバーライドして独自の処理を実装してください。
true | 継続 |
false | 中断 (_ThreadKicker が待機状態になります。) |
FVCL::CFvThread::UserID |
識別子
ユーザーが識別する為の ID です。特に制約はありません。
FVCL::CFvThread::UserProc |
コールバック関数
_ThreadKicker からコールされる関数ポインタです。
FVCL::CFvThread::UserProcParam |
コールバック関数へ渡す引数
_ThreadKicker が UserProc をコールする際に渡す引数です。
FVCL::CFvThread::ThreadOrder |
FVCL::CFvThread::ThreadStatus |
スレッドの状態
FVCL::CFvThread::ThreadLoopCount |
スレッドの繰り返し回数 [初期値:0、範囲:0~]
FVCL::CFvThread::ThreadLoopMax |
スレッドの繰り返し上限 [初期値:0、範囲:0=無限, 1~=有限]
|
protected |
スレッドハンドル
|
protected |
スレッドID