电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

嗜睡的理发师问题

嗜睡的理发师问题_第1页
1/10
嗜睡的理发师问题_第2页
2/10
嗜睡的理发师问题_第3页
3/10
1、嗜睡的理发师问题:一个理发店由一个有 N 张沙发的等候室和一个放有一张理发椅的理发室组成。没有顾客要理发时,理发师便去睡觉。当一个顾客走进理发店时,如果所有的沙发都已经占用,他便离开理发店;否则,如果理发师正在为其他顾客理发,则该顾客就找一张空沙发坐下等待;如果理发师因无顾客正在睡觉,则由新到的顾客唤醒理发师为其理发。在理发完成后,顾客必须付费,直到理发师收费后才能离开理发店,试用信号量实现这一同步问题。 int waiting ;//等候理发的顾客数 int CHAIRSr;//为顾客准备的椅子数 semaphore Customers,babers,mutex; Customers=0; barbers=0; waiting=0; mutex=1; barber( )//理发师进程 { while(TRUE) { wait(customers); //若无顾客,理发师睡眠 wait(mutex);//进程互斥 waiting=waiting-1;//等待顾客数少一 signal(barbers);//理发师去为一个顾客服务 signal(mutex);//离开临界区 Cut_hair(); } } Customer (int i) { wait(mutex);//进程互斥 if(waiting

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

嗜睡的理发师问题

确认删除?
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群