0x778d6d79 处有未经处理的异常: 0xC0000005: 写入位置 0x00000014 时发生访问冲突

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/txwtech/article/details/88849479

multi_thread_example.exe 中的 0x778d6d79 处有未经处理的异常: 0xC0000005: 写入位置 0x00000014 时发生访问冲突

//MFC,单文档实现临界区线程同步时,请在MainFram.cpp的构造函数里面初始化。

int CThreadSend::Run(void)
{
 //return 0;
 while (bRun)
 {
  EnterCriticalSection(&cs);  //单文档实现临界区线程同步时,请在MainFram.cpp的构造函数里面初始化。
  if (globalList.GetCount() < 100)
  {
   CTime time = CTime::GetCurrentTime();
   CString in;
   in.Format("第%d次的运行时间=%s", iIndex++, time.Format( "%Y-%m-%d %H:%M:%S" ));   
   globalList.AddTail(in);
  }
  LeaveCriticalSection(&cs);
  Sleep(1000);
 }
 return CWinThread::Run();
}

int CThreadSend::Run(void)
{
	//return 0;
	while (bRun)
	{
		EnterCriticalSection(&cs);  //单文档实现临界区线程同步时,请在MainFram.cpp的构造函数里面初始化。
		if (globalList.GetCount() < 100)
		{
			CTime time = CTime::GetCurrentTime();
			CString in;
			in.Format("第%d次的运行时间=%s", iIndex++, time.Format( "%Y-%m-%d %H:%M:%S" ));			
			globalList.AddTail(in);
		}
		LeaveCriticalSection(&cs);
		Sleep(1000);
	}
	return CWinThread::Run();
}
// CMainFrame 构造/析构

CMainFrame::CMainFrame()
{
	// TODO: 在此添加成员初始化代码
	theApp.m_nAppLook = theApp.GetInt(_T("ApplicationLook"), ID_VIEW_APPLOOK_VS_2008);
	InitializeCriticalSection(&cs);//new added
}

CMainFrame::~CMainFrame()
{
	DeleteCriticalSection(&cs); //new added
}

猜你喜欢

转载自blog.csdn.net/txwtech/article/details/88849479