MFC明确禁止UI线程外的直接UpdateData,但是仍然可以通过定义新消息来完成这个功能.事实证明这样还是不太好:
我在UI线程外的一个新线程内高频度(320*240次)同时操作一个UI的CString和ProgressBar,结果会产生随机的CString数据紊乱,要么是少数据,要么是写丢失.我将ProgressBar操作拿出一个Loop,改为320次频度的循环,经过多次测试证明这样做使得程序稳定性提高了,原来差不多40%的出错率现在差不多降到了10%一下(也许就是0%了,我只测试了10次).