子スレッドのAfxMessageBoxがブロックされてしまいます。


ゆきなり  2004-06-26 01:02:36  No: 53873  IP: [192.*.*.*]

こんにちわ、初めて投稿するものです。
二つ子スレッドを作成してメインフレームのOnClose()で終わるのを待つプログラムを作成したのですが、なぜかGetMessage(&msg,GetSafeHwnd(),NULL,NULL)を省くと子スレッドのAfxMessageBox()がブロックされてしまいます。何故なんでしょうか??

void CMainFrame::OnClose() 
{
    ...
    for(int i = 0 ;i < MAX_THREAD_NUM ;i++){
        do{
      MSG msg;
これです->  GetMessage(&msg,GetSafeHwnd(),NULL,NULL);
      GetExitCodeThread(g_hdl[i], &dwExitCode);
  }while(dwExitCode == STILL_ACTIVE);

    }
    ...
}
DWORD WorkProc1(LPVOID pParm){
    ...
    AfxMessageBox("First Thread");
    ...
}

DWORD WorkProc2(LPVOID pParm){
    ...
    AfxMessageBox("Second Thread");
    ...
}

編集    削除