- 557 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 19:33:15 ]
- 自分から終了することもあるし、外部から終了通知を受け取ることもある
ようなスレッド関数について質問です。 こういう場合、(スレッド関数はすでに終了してるぞ!)フラグや (外部から終了通知が出されたぞ!)的な何かはいったいどうやって実装していますか? 自分はいつも bool isActive = false; bool IsThreadActive() { lock {return isActive} } void SetThreadActive(bool flag) { lock {isActive = flag; } } void ThreadFunc() { SetThreadActive(true); try { while (IsThreadActive()) { ... いろんな処理 } } catch(...) { SetThreadActive(false); throw; } } 的なやり方でやってしまっているのですが、 これって正しいのでしょうか? また、もしあればもっといい方法を教えていただけると助かります。
|

|