xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

資源簡(jiǎn)介

信號(hào)量PV經(jīng)典問題之沉睡理發(fā)師,適用操作系統(tǒng)大作業(yè) C++編寫

資源截圖

代碼片段和文件信息

#include
#include
#include

using?namespace?std;


int?waiting=0;
int?chairs=2;?????????????????????????????//為了使結(jié)果便于觀測(cè)僅采用2個(gè)等待椅
#define?random?(rand()*10000)/RAND_MAX????//產(chǎn)生一個(gè)隨機(jī)數(shù)代表顧客在時(shí)間上隨機(jī)進(jìn)入理發(fā)店
DWORD?a;?
HANDLE?barbers=CreateSemaphore(NULL11“barbers“);
HANDLE?customers=CreateSemaphore(NULL01“customers“);
HANDLE?mutex=CreateMutex(NULLFALSE“mutex“);
//理發(fā)師開始為一個(gè)顧客理發(fā)
void?cut_hair()
{??Sleep(10);
???cout<<“Barber?working.“<???Sleep(10000);
}
//一個(gè)顧客理完發(fā)并離開
void?get_haircut()
{???Sleep(10000);
cout<<“One?custmer?finished“<

}

DWORD?WINAPI?ThreadCustomer(LPVOID?lpParam)
{

WaitForSingleobject(mutexINFINITE);
cout<<“One?custmer?enter.“<
if(waiting {
cout<<“Still?have?seats.?waiting.“< waiting++;
????
ReleaseSemaphore(customers1NULL);

ResumeThread(customers);\
????????ReleaseMutex(mutex);
WaitForSingleobject(barbersINFINITE);
cout< get_haircut();

}
else
{
cout<<“Full?the?custmer?left“<
ReleaseMutex(mutex);
}
return?0;
}

DWORD?WINAPI?ThreadBarber(LPVOID?lpParam)
{
while(true)
{
WaitForSingleobject(customersINFINITE);
WaitForSingleobject(mutexINFINITE);
waiting--;

ReleaseSemaphore(barbers1NULL);
???????
ResumeThread(barbers);?
ReleaseMutex(mutex);
cut_hair();

}
return?0;
}

int?main()
{
HANDLE?customerThread;
????HANDLE?barberThread=CreateThread(NULL0ThreadBarberNULL0NULL);
?while(true)
?{??
Sleep(random);
????cout< customerThread=CreateThread(NULL0ThreadCustomerNULLaNULL);
cout<????
}
return?0;
}

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件?????249933??2011-12-30?02:07??Task?3.1-Sleeping?Barber\Debug\SleepingBarber.exe

?????文件?????374880??2011-12-30?02:07??Task?3.1-Sleeping?Barber\Debug\SleepingBarber.ilk

?????文件??????54275??2011-12-30?02:07??Task?3.1-Sleeping?Barber\Debug\SleepingBarber.obj

?????文件????5316280??2011-12-30?01:04??Task?3.1-Sleeping?Barber\Debug\SleepingBarber.pch

?????文件????1090560??2011-12-30?02:07??Task?3.1-Sleeping?Barber\Debug\SleepingBarber.pdb

?????文件?????189440??2011-12-30?02:07??Task?3.1-Sleeping?Barber\Debug\vc60.idb

?????文件?????143360??2011-12-30?02:07??Task?3.1-Sleeping?Barber\Debug\vc60.pdb

?????文件???????1743??2011-12-30?02:07??Task?3.1-Sleeping?Barber\SleepingBarber.cpp

?????文件???????3497??2011-12-30?01:28??Task?3.1-Sleeping?Barber\SleepingBarber.dsp

?????文件????????536??2011-12-30?02:08??Task?3.1-Sleeping?Barber\SleepingBarber.dsw

?????文件??????41984??2011-12-30?02:08??Task?3.1-Sleeping?Barber\SleepingBarber.ncb

?????文件??????48640??2011-12-30?02:08??Task?3.1-Sleeping?Barber\SleepingBarber.opt

?????文件????????794??2011-12-30?02:07??Task?3.1-Sleeping?Barber\SleepingBarber.plg

?????目錄??????????0??2011-12-30?02:07??Task?3.1-Sleeping?Barber\Debug

?????目錄??????????0??2011-12-30?02:08??Task?3.1-Sleeping?Barber

-----------?---------??----------?-----??----

??????????????7515922????????????????????15


評(píng)論

共有 條評(píng)論

相關(guān)資源