VC多线程

发布网友

我来回答

3个回答

热心网友

//开始按钮代码改为下面这样
void CMultiThread2Dlg::OnStart()
{
UpdateData(TRUE);
hThread=CreateThread(NULL,
0,
(LPTHREAD_START_ROUTINE)ThreadFunc,
(VOID*)this,
0,
&ThreadID);
}

//线程代码作如下修改
UINT WINAPI ThreadFunc(LPVOID pParam)
{
CMultiThread2Dlg *dlg = (CMultiThread2Dlg *)pParam;
int integer = dlg->m_nCount;
dlg->GetDlgItem(IDC_START)->EnableWindow(FALSE);
//线程代码
dlg->GetDlgItem(IDC_START)->EnableWindow(TRUE);
}

热心网友

// WaitForSingleObject(hThread,INFINITE);
去掉

热心网友

同意楼上,因为这个函数是阻塞的。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com