我在用MSComm控件的串口通信,要将接收到的数据发送至服务器。在创建线程后,由于线程处在一个while(1)循环中,两个线程cpu占用80%左右了,四个直接就100%,界面不动了,想将其改为非阻塞式的发送,该怎么修改?我这个最后可能还要再增加串口接收并发送数据,可能还需要更多线程,控件方式可以实现吗?请高手赐教!
发送线程代码如下:
DWORD WINAPI ThreadRecv3_send(LPVOID lpParameter)
{
CDatachuli2Dlg* pt;
pt = (CDatachuli2Dlg*)lpParameter;
CString strsend,data1,data2,strtemp,str;
while(1)
{
if(COM3RXData_chuli.GetLength()>33)
{
……//数据处理部分
}
return TRUE;
}