c++ 多线程编程 CreatThread

来源:百度知道 编辑:UC知道 时间:2024/05/15 02:59:45
如何使用CreatThread编多线程的程序?给个小例子吧?

#include "windows.h"
#include <iostream.h>
int num = 100; //模拟售票系统,共100张票

DWORD WINAPI Fun1(LPVOID lpParameter)
{
while (num != 0)
{
cout<<"Fun1: "<<num<<endl;
num -= 1;
Sleep(500);
}
return 0;
}

DWORD WINAPI Fun2(LPVOID lpParameter)
{
while (num != 0)
{
cout<<"Fun2: "<<num<<endl;
num -= 1;
Sleep(500);
}
return 0;
}

void main()
{
HANDLE thread1;
HANDLE thread2;
thread1=CreateThread(NULL,0,Fun1,NULL,0,NULL);
thread2=CreateThread(NULL,0,Fun2,NULL,0,NULL);

while (num != 0)
{
cout<<"main: "<<num<<endl;
num -= 1;
Sleep(1000);
}
Sleep(3000); //3s后关闭线程
CloseHandle(thread1);
CloseHandle(thread2);
}

//多