多线程例子.cpp

来自「HACK编程实例精解附带的大量例子程序」· C++ 代码 · 共 37 行

CPP
37
字号
#include<stdio.h>
#include<windows.h>
int a=0;

CRITICAL_SECTION gcs;
DWORD WINAPI RecvThread(LPVOID lp)
{
   int num=*(DWORD*)lp;
  
   while(a<1000)
	  {
   printf("Thread %d a= %d\n",num,a);
   EnterCriticalSection(&gcs);
	  a++;
   LeaveCriticalSection(&gcs);
   }
return 0;
}
	
void main(void)
{
InitializeCriticalSection(&gcs);
HANDLE Thread[10];
	for(int i=0;i<10;i++)
	{
		
		Thread[i]=CreateThread( NULL,0,RecvThread,&i, 0,NULL); 
		Sleep(500);
	}
	
WaitForMultipleObjects(10,Thread,TRUE,100000);

DeleteCriticalSection(&gcs);
CloseHandle(Thread);

return;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?