Exercise 6.11(2013329620083) Version 0 |
|
👤 Author: by 2013329620083ycd 2015-11-25 14:30:20 |
#include<stdio.h>
#include<math.h>
int waiting =0;//等待理发的顾客的个数
int chairs=n; //椅子的个数
boolean wakeup=false;//没有叫理发师
boolean sleep=false; //理发师没有去睡觉
semarphore customers=0,baber=1,mutex=1;
void barber()
{
while(true)
{
wait(customers); //当没有顾客等的时候理发师就去睡觉
wait(mutex);
waiting--;//等待的人数较少一人
signal(mutex);
signal(barber);
}
}
voi