给线程传递一个整数。
我的一个按钮代码如下
void CThread2Dlg::OnBtnStart()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
int integer=m_count;
m_hThread=CreateThread(NULL,0,ThreadProc,(LPVOID)integer,0,&m_ThreadID);
GetDlgItem(IDC_BTN_START)->EnableWindow(FALSE);
WaitForSingleObject(m_hThread,INFINITE);
GetDlgItem(IDC_BTN_START)->EnableWindow(TRUE);
}
错误如下:
G:\VCproject\Thread2\Thread2Dlg.cpp(179) : error C2664: 'CreateThread' : cannot convert parameter 3 from 'unsigned long (int)' to 'unsigned long (__stdcall *)(void *)'
我的理解是一个整形和一个指针应该是可以相互转换的,所以(LPVOID)integer是可以的啊