Sleep(1); 在线程调度中发挥的微妙作用

//第一步:交付线程处理实时消息
MONITORMSG msg;
memset(msg.MSG, '\0', 56);
sprintf(msg.MSG, "%s", "释放完毕。");
((CDCMSMainApp*)AfxGetApp())->m_pThreadLoadCfg->PostThreadMessage(WM_LOADCFG_MONITOR_LIVEMSG, (WPARAM)&msg, NULL);
Sleep(1);


//此处的Sleep(1)保证了线程的有序调度显示,防止乱码;


//第二步:线程调度函数,通知界面对话框显示消息
void CLoadCfgMonitorThread::OnLoadCfgMonitorLiveMsg(WPARAM wParam,LPARAM lParam)
{
    MONITORMSG  *  live_msg = (MONITORMSG*)wParam;
    ((CDialog*)m_pCLoadCfgMonitorDlg->GetDlgItem(IDC_STATIC_LOADCFG))->SetWindowText(live_msg->MSG);
}




你可能感兴趣的:(Sleep(1); 在线程调度中发挥的微妙作用)