19,502
社区成员
发帖
与我相关
我的任务
分享
BOOL CsdkThreadTestDlg::OnInitDialog()
{
m_pThread=AfxBeginThread(CommProc, this, THREAD_PRIORITY_NORMAL,0, CREATE_SUSPENDED, NULL); // 创建并挂起线程
m_pThread->ResumeThread(); // 恢复线程运行
}
UINT CommProc(LPVOID pParam) //用户线程函数
{
COMSTAT ComStat;
DWORD dwErrorFlags;
CsdkThreadTestDlg * p=(CsdkThreadTestDlg*)pParam;
while(1)
{
p->m_value.Format(__T("%d"),temp++);
Sleep(0);//把CPU的执行权先交出来让其它线程(如UI线程)使用,就不会卡了.
}
return 0;
}
UINT CommProc(LPVOID pParam) //用户线程函数
{
COMSTAT ComStat;
DWORD dwErrorFlags;
CsdkThreadTestDlg * p=(CsdkThreadTestDlg*)pParam;
while(1)
{
p->m_value.Format(__T("%d"),temp++); //这个地方应该添加延时
Sleep(500);
}
return 0;
}
m_pThread=AfxBeginThread(CommProc, this, THREAD_PRIORITY_NORMAL,0, CREATE_SUSPENDED, NULL);
// 创建并挂起线程
m_pThread->ResumeThread(); // 恢复线程运行