UI スレッドを作成しました。ファイルにデータを書き込む UI スレッドにメッセージを投稿しています。
API を使用PostThreadMessage
してメッセージをユーザー スレッドに投稿しています。私の問題は、投稿したすべてのデータを書き込んでいないことです。たとえば、100 個のデータを投稿すると、ランダムに 3 個または 98 個が実行ごとに異なります。Postdata のハンドラーがすべてのメッセージに対して呼び出されるわけではありません。
CWriteToFile *m_pThread = (CWriteToFile *)AfxBeginThread(RUNTIME_CLASS (CWriteToFile));
PostThreadMessage(m_pThread->m_nThreadID , WM_WRITE_TO_FILE, (WPARAM)pData,NULL);
WaitForSingleObject(m_pThread, INFINITE);
の戻り値PostThreadMessage
は成功です。