理发师问题代码
更新时间:2023-12-05 03:16:01 阅读量: 教育文库 文档下载
#include
#define MAX 6 //最大椅子的数量
sem_t barber; sem_t customer;
sem_t mutex; //互斥信号量
int count = 0; //计数:等待理发的顾客数 int chairs = MAX;
void *Barber(void *arg){ while(count>-1){ printf(\理发师等待顾客...\\n\ sem_wait(&customer); //等待顾客 printf(\理发师:正在理发中...\\n\ sem_wait(&mutex); //理发结束 count--; chairs++; printf(\理发师理完了,此时正在等待的顾客数为:%d\\n\ sem_post(&barber); sem_post(&mutex); printf(\欢迎下次光临!\\n\ } }
void *Customer(void *arg){ sem_wait(&mutex); printf(\请顾客%d坐\\n\ if(chairs > 0){ //如果当前有空余座位 count++; //顾客数量+1 chairs--; //占用一个座位 printf(\正在等待的顾客为%d,请理发师加油!\\n\ sem_post(&customer); //等待理发,唤醒理发师 sem_post(&mutex); //允许其他顾客进门 sem_wait(&barber); //当理发师空闲时开始理发 }else { //没有空余座位,准备离开 sem_post(&mutex); //离开时释放mutex,允许其他进程访问 printf(\没有座位了,不好意思!\\n\ } sleep(1); }
int main(int argc,char *argv[]){ sem_init(&barber,0,1); sem_init(&customer,0,0); sem_init(&mutex,0,1); pthread_t p,c; int flag = 1;
flag = pthread_create(&p,NULL,Barber,NULL); if(flag == 0){ printf(\这个理发店有一个理发师!\\n\ flag = 1; } pthread_t d[9]; int i = 0; for(;i<8;i++){ flag = pthread_create(&d[i],NULL,Customer,i); }
return 0; }
正在阅读:
理发师问题代码12-05
2012.9中寨小学简介12-24
皮带司机考试题答案05-07
工程材料必考大题及答案04-13
基于单片机的输液滴速控制系统设计05-08
世界银行集团12-20
数据结构试卷及答案03-02
座体铸造工艺设计及其模拟优化04-10
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 理发师
- 代码
- 问题
- 中小企业物流仓储成本研究
- 人教版四年级数学上册《积的变化规律》教学设计(王全莉)
- 工程开工通讯稿
- web编程基础练习-答案
- 关于边防部队会计电算化与内部审计问题的若干思考
- 宁夏回族自治区农民工工资保证金管理办法
- 2010年数学建模比赛B题论文年上海世博会影响力的定量评估
- 2017-2022年中国食用胶市场行情动态报告(目录) - 图文
- 基于单片机的抢答器的设计
- X射线荧光光谱分析铁合金的试样制备方法
- 2016年水利工程质量检测员继续教育考试-基础题库5
- 政治学原理(论文)
- 我要开花给你看 - 3000字
- 全息宇宙在于你选择
- 结合人力资源管理,作为人力资源管理负责人……怎样帮助员工实现自我价值和社会价值
- 现代汉语练习题
- 大学生集训管理规定
- 齐心协力不畏劳累保检修报道
- 锂离子电池材料制备与表征
- 2014年秋应用写作期末考开卷(1)