用vc++做了一个串口接受程序,用createthread建立一个线程,在线程中扫描串口,子函数如下,结果运行的,虽然电脑不卡,但是任务管理器显示cpu占用%99,用什么办法可以解决这个问题哦?
DWORD WINAPI ProsComm(LPVOID lpParameter)
{
char buf[1000];
DWORD len=0;
HANDLE mhandle=((PARA*)lpParameter)->m_FileHandle;
HWND mhwnd=((PARA*)lpParameter)->m_Hwnd;
while(1)
{
if(!ReadFile(mhandle,buf,1000,&len,NULL))
{
AfxMessageBox("读取串口失败!");
return FALSE;
}
if(len>0)
{
buf[len]='\0';
::PostMessage(mhwnd,WM_RevcData,(WPARAM)buf,len);
}
}
}