头大了, 在doc的数据处理线程中向 CMainFrame发送消息 为什么有的时候过很久 才响应消息 并调用消息处理函数解决办法

头大了, 在doc的数据处理线程中向 CMainFrame发送消息 为什么有的时候过很久 才响应消息 并调用消息处理函数
在doc的数据处理子线程中,向   CMainFrame发送消息
pMainFrame-> PostMessage(WM_MESSAGE,   0,   (LPARAM)pSruct);
在WM_MESSAGE对应的消息处理函数中,进行数据处理

但有的时候,数据半天不见处理  
在发送消息处和消息处理函数中打断点调试   ,结果发现消息发送出去后半天才运行到消息处理函数那里,   奇怪的是只是处理某些数据是这样的,而且要是接下来又遇到相同的数据   就很快能被处理。

在出现不能及时处理的情况时,程序不响应其他消息   差不多就死在那里了,

真是头大了

------解决方案--------------------
pMainFrame-> PostMessage(WM_MESSAGE, 0, (LPARAM)pSruct);

换成
pMainFrame-> SendMessage(WM_MESSAGE, 0, (LPARAM)pSruct);
请注意Post和Send的区别!
------解决方案--------------------
不知道
难道线程在sleep
------解决方案--------------------
查看下处理消息的函数,看是不是与其它线程冲突或等待其它线程或资源.