文章
35
粉丝
0
获赞
1
访问
4.5k
Semaphore chopstick={1,1,....1}//n个筷子
Semaphore max=n-1//最多允许n-1个哲学家用餐
Semaphore bowl=min(m,n-1)//碗比人少时,保证每个用餐的哲学家都有碗可用
p(max);
p(chop[i]);//取左筷子
p((chop[i]+1)%n);//取右筷子
p(bow);
用餐;
v(chop[i]);
v((chop[i]+1)%n);
v(bowl);
v(max);
思考;
评分及理由
(1)得分及理由
得分:6分
理由:学生采用了与方法一相似的思路,通过限制最大可进餐名额数量(max=n-1)和碗的数量(bowl=min(m,n-1))来防止死锁。代码逻辑基本正确,但存在以下问题:
(2)得分及理由
得分:0分
理由:学生没有提供与方法二或方法三相关的解决方案,因此这部分不得分。
(3)得分及理由
得分:0分
理由:学生没有提供与方法三相关的解决方案,因此这部分不得分。
题目总分:6+0+0=6分
登录后发布评论
暂无评论,来抢沙发