如何用信号量机制描述读者写者问题? 20
1个回答
展开全部
设置互斥信号量wmutex 表示写者间、读者和写者间互斥
用readcount变量来记录读者数
Var rmutex,wmutex: semaphore:=1,1 ;
readcount :integer :=0 ;
begin
parbegin
reader:begin
repeat
P(rmutex)
if readcount=0 then P(wmutex);
readcount=readcount+1;
V(rmutex)
read text
P(rmutex)
readcount=readcount+1;
if readcount=0 then V(wmutex);
V(rmutex)
until false
writer:begin
repeat
P(wmutex);
write text;
V(wmutex);
until false
end
parend
end
用readcount变量来记录读者数
Var rmutex,wmutex: semaphore:=1,1 ;
readcount :integer :=0 ;
begin
parbegin
reader:begin
repeat
P(rmutex)
if readcount=0 then P(wmutex);
readcount=readcount+1;
V(rmutex)
read text
P(rmutex)
readcount=readcount+1;
if readcount=0 then V(wmutex);
V(rmutex)
until false
writer:begin
repeat
P(wmutex);
write text;
V(wmutex);
until false
end
parend
end
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
泰硕安诚
2024-09-05 广告
2024-09-05 广告
第二种是环境影响报告表,指的是对建设项目本身可能产生或是能周围环境造成较大污染和影响的; 第三种是环境影响登记表,指的是造成的污染或影响较轻。 国家对这三种形式的认定有个专门的目录,叫《建设项目环境影响分类管理目录》,对所有类别的项目进行分...
点击进入详情页
本回答由泰硕安诚提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询