ダイアログが止まってしまいます

解決


ken  2013-04-08 17:29:19  No: 73661  IP: 192.*.*.*

MFCの開発初心者です。
現在MFCでダイアログベースのアプリを作成しているのですが、
ダイアログが止まってしまいます。
詳細としてはスレッドが二つあり

スレッド1
{
   while (1)
   {
      if(m_a==1)
         m_Flag1 = True;
      else if (m_a == 0)
         m_Flag1 = false;
   
            if(m_b==1)
         m_Flag2 = True;
      else if (m_b == 0)
         m_Flag2 = false;
   

      イベントセット 
      sleep(1);    ※
   }
}

スレッド2
{
   while(1)
   {
      イベント待ち
      if (m_Flag1 == True);
         PostMessage (処理A);

      if (m_Flag2 == True);
         PostMessage (処理B);
   }
}

大まかにはこのような処理をやっているのですが、
例外がでて止まってしまいます。
最終的にはAfxInternalPumpMessageで中断されます。

※のsleepの秒数を伸ばすと止まらないのですが、原因がいまいち分かりません。

PostMessageの中の処理が終わる前にまたPostMessageが呼ばれてしまっているのでしょうか?


visual studioを使ったダイアログ開発は初めてなもので足りない情報などありましたら教えてください。お願いします。

開発はvisual studio 2008です

編集 削除
ken  2013-04-08 17:32:22  No: 73662  IP: 192.*.*.*

すみません間違えて二つ質問を作ってしまいましたのでこちらは解決にしておきます

編集 削除