- 601 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 09:31:31 ]
- VC++Windowsアプリの質問です。
メッセージループを1つのスレッドに隔離しようと思うのですが、 PostQuitMessage(0)を別スレッドから単純に呼び出しても安全でしょうか? HWND g_hWnd BOOL g_Active; // g_Activeをクリティカルセクション内でやり取り BOOL fGetActive(); VOID fSetActive(BOOL isActive); INT WINAPI WinMain(...){ fSetActive(TRUE); g_hWnd = (ウインドウハンドル作成); メッセージループ用スレッド生成 while( fGetActive() ){ if(...) PostQuitMessage(0); } メッセージループ用スレッド後処理 return 0; } UINT WINAPI MessageLoop(...){ MSG msg; msg.hwnd = g_hWnd; while (GetMessage(&msg, NULL, 0, 0) > 0){ ... } fSetActive(FALSE); return 0; }
|

|