2009-11-25 13 views
0

我已經創建了一個UI線程。我將消息發佈到將寫入文件中的數據的UI線程。PostThreadMessage失敗

我正在使用PostThreadMessage API將消息發佈到用戶線程。我的問題是沒有寫出我發佈的所有數據。對於實例,如果我發佈了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的返回值爲成功。

+0

感謝您的回覆。 Post的返回值是所有帖子的成功。 但處理程序只被調用幾條消息。 – Karthik 2009-11-25 09:28:09

回答

0

如果郵件隊列已滿,PostMessage系列函數可能會失敗。您應該檢查函數調用是否成功。