MFC串口通信的有关问题(百思不得其解,求大神指点)

MFC串口通信的问题(百思不得其解,求大神指点)
1、应公司要求编写了一个基于MFC单文档的上位机程序,与单片机建立通讯,通讯方式为235,半双工,所以没有写握手协议。
2、通讯的函数写在DLL里面,没有采用多线程的方法。
3、在MFC单文档的上位机程序视类中的ontime函数里建立线程(每100ms建立一次线程,读取数据),在框架类里对dll采用显性调用,然后再线程里获取框架指针调用dll的函数对串口进行读写。(在线程里只可以使用框架类的指针)
4、线程里读取数据后发送消息给视类,实现各个控件显示读取的数据值。
5、编译没有问题,运行后也正常。
6、问题来了,当我不停的放大缩小窗口时(或者小窗口时我鼠标移动窗口的位置),大概6、7次会出现一次通讯中断的情况!!!这是为什么,想了好久也没找到原因出在哪??
7、如果我不在程序视类中的ontime函数里建立线程,只采用单线程的方法,则不会出现上述问题。
我真是给跪了!@!!!,恳请大家帮我想想,问题出在哪
------解决思路----------------------
为何把线程建立写到视图类中呢,你不停的调节窗口大小,视图需要刷新,可能刷新的间隔小,影响了线程的创建。

1,建议你做个试验,调整窗口的时间间隔长一点,我觉得应该不会中断。
2,线程的创建写到doc中。

------解决思路----------------------
WM_TIMER消息的优先级比较低,只有当消息队列中没有其它高优先级的消息的时候,才会去处理它。
The WM_TIMER message is a low-priority message. The GetMessage and PeekMessage functions post this message only when no other higher-priority messages are in the thread's message queue.