帮我看下这段代码错哪
void Cthread11Dlg::OnBnClickedButton1()
{
hThread1 = CreateThread(NULL, 0, Func1, NULL, 0, NULL);
hThread2 = CreateThread(NULL, 0, Func2, NULL, 0, NULL);
CloseHandle(hThread1);
CloseHandle(hThread2);
}
DWORD WINAPI Cthread11Dlg::Func1(LPVOID lpparameter)
{
Cthread11Dlg* p = (Cthread11Dlg*)lpparameter;
WaitForSingleObject(hMutex, INFINITE);
Sleep(30);
p->Add1();
ReleaseMutex(hMutex);
return 0;
}
DWORD WINAPI Cthread11Dlg::Func2(LPVOID lpparameter)
{
Cthread11Dlg* p = (Cthread11Dlg*)lpparameter;
WaitForSingleObject(hMutex, INFINITE);
Sleep(30);
p->Add2();
ReleaseMutex(hMutex);
return 0;
}
void Cthread11Dlg::Add1()
{
m_list.AddString(_T("线程1运行"));
}
void Cthread11Dlg::Add2()
{
m_list.AddString(_T("线程2运行"));
}
当我点Button1按钮时,创建两线程,分别向ListBox写入线程1运行,线程2运行
为什么我点Button1时,会弹出应用程序错误,"0x787af9cc"指令中“0x00000098”内存,不能为read?