设为首页 加入收藏

TOP

多线程编程示例
2014-11-23 17:45:03 】 浏览:393
Tags:线程 编程 示例
#include "stdafx.h"
#include < windows.h>
#define THREAD_NUM 50 //线程数
CRITICAL_SECTION g_cs;
int ThreadProc(LPVOID lpParam)
{
int x = *(int*)lpParam;
for (int i=0; i<5; i++)
{
EnterCriticalSection(&g_cs);
printf("[%d]:%d\n",x,i);
LeaveCriticalSection(&g_cs);
}
return x;
}
int _tmain(int argc, _TCHAR* argv[])
{
InitializeCriticalSection(&g_cs);
HANDLE hThread[THREAD_NUM];
int nValue[THREAD_NUM];
for (int i=0; i {
nValue[i] = i;
hThread[i] = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)ThreadProc,(LPVOID)&nValue[i],0,NULL);
}
WaitForMultipleObjects(THREAD_NUM,hThread,TRUE,INFINITE); //等待所有线程执行完毕
DWORD dwCode = 0;
for (int i=0; i {
if (GetExitCodeThread(hThread[i],&dwCode)) //获取各个线程的返回值
printf("%d\n",dwCode);
CloseHandle(hThread[i]);
}
DeleteCriticalSection(&g_cs);
return 0;
}
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇vc2012编译thrift 下一篇VC++中ADO方式操作数据库之有关“..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目