火车站购票系统模拟

来源:互联网 发布:复杂网络 聚类 编辑:程序博客网 时间:2024/04/28 16:00
#include <windows.h>
#include <iostream.h>


/*火车站购票系统模拟
多线程访问同一个资源时,可能会导致对重复利用*/
DWORD WINAPI Fun1Proc(LPVOID lpParameter);
DWORD WINAPI Fun2Proc(LPVOID lpParameter);
int index = 0;
int tickets = 100;
void main()
{
HANDLE hThread1;
HANDLE hThread2;
hThread1=CreateThread(NULL,0,Fun1Proc,NULL,0,NULL);
hThread2=CreateThread(NULL,0,Fun2Proc,NULL,0,NULL);
CloseHandle(hThread1);
CloseHandle(hThread2);

Sleep(4000);
}


DWORD WINAPI Fun1Proc(LPVOID lpParameter){
while(TRUE){
if(tickets>0){
Sleep(1);
cout<<"thread1 is sell--->"<<tickets--<<endl;
}
else 
break;
}
return 0;
}


DWORD WINAPI Fun2Proc(LPVOID lpParameter){
while(TRUE){
if(tickets>0){
Sleep(1);
cout<<"thread2 is sell--->"<<tickets--<<endl;
}
else 
break;
}
return 0;
}
原创粉丝点击