hb120973135 发表于 2018-6-17 07:12:28

WIndows线程同步

UINT WriteA(LPVOID pParam)  {
  CEdit *pEdit=(CEdit*)pParam;
  pEdit->SetWindowText("");
  WaitForSingleObject(semaphoreWrite.m_hObject,INFINITE);
  CString str;
  for(int i=0;i<10;i++)
  {
  pEdit->GetWindowText(str);
  g_Array=''A'';
  str=str+g_Array;
  pEdit->SetWindowText(str);
  Sleep(1000);
  }
  ReleaseSemaphore(semaphoreWrite.m_hObject,1,NULL);
  return 0;
  }
  UINT WriteB(LPVOID pParam)
  {
  CEdit *pEdit=(CEdit*)pParam;
  pEdit->SetWindowText("");
  WaitForSingleObject(semaphoreWrite.m_hObject,INFINITE);
  CString str;
  for(int i=0;i<10;i++)
  {
  pEdit->GetWindowText(str);
  g_Array=''B'';
  str=str+g_Array;
  pEdit->SetWindowText(str);
  Sleep(1000);
  }
  ReleaseSemaphore(semaphoreWrite.m_hObject,1,NULL);
  return 0;
  }
  UINT WriteC(LPVOID pParam)
  {
  CEdit *pEdit=(CEdit*)pParam;
  pEdit->SetWindowText("");
  WaitForSingleObject(semaphoreWrite.m_hObject,INFINITE);
  for(int i=0;i<10;i++)
  {
  g_Array=''C'';
  pEdit->SetWindowText(g_Array);
  Sleep(1000);
  }
  ReleaseSemaphore(semaphoreWrite.m_hObject,1,NULL);
  return 0;
  }
页: [1]
查看完整版本: WIndows线程同步