线程启动问题~~~分不够可以再加~
UINT CTaskingDoc::ThreadFunc(LPVOID pParam)
{
CSpinner* lpSpin = (CSpinner*)pParam;
BOOL* pbContinue = lpSpin->GetContinue();
while (*pbContinue)
lpSpin->Draw();
return 0;
}
void CTaskingDoc::SuspendSpinner(int nIndex, BOOL bSuspend)
{
if (!bSuspend)
{
if (m_pSpinThread[nIndex])
{
HANDLE hThread = m_pSpinThread[nIndex]->m_hThread;
::WaitForSingleObject(hThread, INFINITE);
}
}
else
{
int iSpnr;
switch(nIndex)
{
case 0:
iSpnr = 1;
break;
case 1:
iSpnr = 3;
break;
}
m_pSpinThread[nIndex] = AfxBeginThread(ThreadFunc, (LPVOID)&m_cSpin[iSpnr]);
}
}
编译时提示E:\ip\Tasking\TaskingDoc.cpp(184) : error C2665: 'AfxBeginThread' : none of the 2 overloads can convert parameter 1 from type 'unsigned int (void *)'