问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

记录型信号量解决生产者消费者问题伪代码,描述每一步具体执行过程

发布网友 发布时间:2024-04-09 11:44

我来回答

1个回答

热心网友 时间:2024-04-11 10:06

Var mutex,empty,full:semaphore:=1,n,0; // 定义三个信号量
buffer:array[0,...,n-1]of item; // 定义缓冲池,容量为n
in,out:integer:=0,0;
begin
parbegin
proceducer:begin // 生产者
repeat
.
.
.
producer an item nextp; // 生产一个产品
.
.
.
wait(empty); // 申请一个空缓冲区
wait(mutex); // 申请缓冲池的使用权
buffer(in):=nextp; // 将产品放入缓冲池中
in:=(in+1)mod n; // 下一个空缓冲区地址
signal(mutex); //释放缓冲池使用权
signal(full); // 释放一个满缓冲区
until false;
end
consumer:begin
repeat
wait(full);
wait(mutex);
nextc:=buffer(out);
out:=(out+1)mod n;
signal(mutex);
signal(empty);
consumer the item in nextc;
until false;
end
parend
end

nextp 应该是next proceducer的意思吧
nextc 应该是next consumer
貌似也不是什么变量,属于语言描述而已
下面的消费者也是差不多的。

至于生产者进程如何被阻塞和唤醒,因为程序中有一个 repeat语句,所以进程不断测试缓冲池是否有空缓冲区,以及缓冲池是否有其他进程使用。若两个条件不满足,则进入阻塞队列等待。若某一时刻两个条件都能满足,则能唤醒该进程。
建议楼主还是去找几题用C语言写的生产者消费者程序看吧,这个语言不太容易看懂
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
mrna转录试剂盒 windows7应用程序损坏或丢失怎么办? 联想windows7怎么恢复不小心删除的应用 Win7电脑图标不见了如何恢复解决Win7电脑图标丢失问题的有效方法_百 ... 美女主播软件有哪些 什么软件看美女直播? 什么视频直播软件可以免费看女神直播? 钣金工业设计 钣金灰本段用途 关于刮胡子的相关问题 祝姐妹们生日快乐祝福语的句子有什么祝姐妹们生日快乐祝福语的句子 女儿生日快乐祝福语简短独特祝福女儿生日快乐语简短独特 夏普电视遥控器按钮有哪些? 临沂和河东区帝景湾的房子怎么样啊?我想买一套,但是有人说房子质量不... 根号5前带一整数3怎么读 正月里烧13个菜会不会不好啊? 立案批捕后可以撤案吗 未满18周岁可以使用零钱通吗? 葫芦炖鸭子怎么做葫芦炖鸭子的烹饪方法 蜀山神话珠仙详解 现在我已经是高三了,我想尽快提高我的英语,该怎么办? ...与···交谈是talk ___ ;(外貌)相像是take ___ ; ...达克speed90的底板,中式直板,配什么套胶呢? 什么时候分压能代入方程式计算 请问可不可以帮我看下这个题的第二个问? 请问捷虹客服电话号码是多少? 苹果手机在电热器旁边烤了一夜要紧吗 我的小作文没有完全按照要求来写 会扣多少分啊? 作文写满得了并且不离题一般扣多少分? 雅思英语1-9是什么意思? 梦幻西游手游哪个门派好赚钱? 探索物理之美:一个学生的视角 昌黎中医院内分泌科您好!黄褐斑和内分泌有关系吗?可以调理吗?_百度... 怎么处理感情矛盾? 当感情出现矛盾时如何处理更好? 如何理性地解决感情矛盾? 如何与伴侣化解矛盾、维系感情? 股票交易废单是什么意思? 起什么样的名字容易招惹桃花桃花最旺盛宝宝取名免费推荐 ...还一无所有,,生活各方面都很茫然。不知道该怎么办? 亲们!你们知道从安徽天长到苏州南站有直达的大巴?价格是多少?时间要... 天长到苏州多少公里 我在天长,我要去苏州张家港要怎么坐车?从天长到苏州的车有几点的?_百... 天长到苏州几点的车谢谢了,大神帮忙啊 谁有或知道哪有武汉北京路小学的照片?? 我想查一下北京小学生办公交卡要什么样的照片 北京版小学语文第七册(四年级上)生字表,能帮忙拍个照片吗?孩子的暑假... 喝完啤酒胃痛可以喝胃痛宁片吗 急~~~高分悬赏!! 求杭州旅馆 7月份招聘会 明日之后商场废弃的电梯缆绳在哪任务?