这么安全的代码,还说会死锁。 无语
在以下代码中,线程Thread退出时,可能会要UI线程互锁void CTagScanPCDlg::StopRead(){ if (m_hEvent != NULL) //线程结束等待事件 { SetEvent(m_hEvent); } if (m_hThreadRead != NULL) { WaitForSingleObject(m_hThreadRead,INFINITE); //等待线程结束 DWORD dwExitCode = 0; m_hThreadRead = NULL; } m_hEvent = NULL;}DWORD WINAPI CTagScanPCDlg::ReadThread(LPVOID lpParam){ while (WaitForSingleObject(pDlg->m_hEvent,0) == WAIT_TIMEOUT){ …… pDlg->SetDlgItemText(IDC_TAGGROUP,(LPCTSTR)szTextTitle); //操作UI元素 ……}……}