主题: 创建多线程
查看单个帖子
旧 2007-04-12, 12:47 PM   #1
huangyhg
超级版主
 
huangyhg的头像
 
注册日期: 04-03
帖子: 18592
精华: 36
现金: 249466 标准币
资产: 1080358888 标准币
huangyhg 向着好的方向发展
默认 创建多线程

#include<stdio.h>
#include<windows.h>
int a=0;


CRITICAL_SECTION gcs;
DWORD WINAPI RecvThread(LPVOID lp)
{
int num=*(DWORD*)lp;

while(a<100000)
{
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;
}
huangyhg离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)