C++多线程简单实现

    虽然对java情有独钟,但是强大的C++可不能不懂,来个C++线程简单实现吧~
#include<windows.h>
#include<iostream.h>
//定义线程执行的函数
DWORD WINAPI Fun1Proc(
LPVOID lpPrarameter
);
DWORD WINAPI Fun2Proc(
LPVOID lpPrarameter
);
DWORD WINAPI Fun3Proc(
LPVOID lpPrarameter
);
int *sumAll=new int[3];
int temp=0;
int main(){

HANDLE hThread1,hThread2,hThread3;
hThread1=CreateThread(NULL,0,Fun1Proc,NULL,0,NULL);//线程创建
hThread2=CreateThread(NULL,0,Fun2Proc,NULL,0,NULL);
hThread2=CreateThread(NULL,0,Fun3Proc,NULL,0,NULL);
CloseHandle(hThread1);//关闭线程句柄
CloseHandle(hThread2);
CloseHandle(hThread3);
Sleep(1000);
for(int i=0;i<3;i++){
temp+=sumAll[i];
cout<<"单数组:"<<sumAll[i]<<endl;
}
cout<<"总和:"<<temp<<endl;
return 0;
}

DWORD WINAPI Fun1Proc(LPVOID lpPrarameter)//实现线程的函数
{
int n=0;
for(int i=0;i<7;i++){
n+=i;
}
sumAll[0]=n;
return 0;

}
DWORD WINAPI Fun2Proc(LPVOID lpPrarameter)
{
int n=0;
for(int i=0;i<5;i++){
n+=i;
}
sumAll[1]=n;
return 0;
}
DWORD WINAPI Fun3Proc(LPVOID lpPrarameter)
{
int n=0;
for(int i=0;i<9;i++){
n+=i;
}
sumAll[2]=n;
return 0;
}

你可能感兴趣的:(多线程,C++)