マルチスレッドプログラミング相談室 その6at TECH
マルチスレッドプログラミング相談室 その6 - 暇つぶし2ch557:デフォルトの名無しさん
08/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;
 }
}

的なやり方でやってしまっているのですが、
これって正しいのでしょうか?
また、もしあればもっといい方法を教えていただけると助かります。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch