文章
116
粉丝
0
获赞
5
访问
12.6k

评分及理由
(1)得分及理由(满分7分)
学生作答存在以下问题:
if(tree < 3) 来实现,但这在并发环境下是不安全的,因为对共享变量 tree 的读写没有互斥保护,可能导致多个甲同时进入挖坑条件,违反“树坑数量小于3”的限制。正确做法应使用信号量 sk 来控制可挖坑的数量。empty 和 water 信号量实现了“挖坑-放树填土-浇水”的顺序同步,而学生答案中仅通过共享变量 tree 和 tree_water 的非原子操作来判断,无法保证乙在甲挖坑之后执行、丙在乙填土之后执行,可能导致乙或丙在条件不满足时执行或永远不执行。综上,学生答案未能正确实现三人植树过程的同步互斥关系,核心逻辑存在严重错误。但考虑到学生识别结果中可能存在误写(如int int tree_water),且基本理解了需要互斥使用铁锹,给予少量分数。
得分:1分(满分7分)
题目总分:1分
登录后发布评论
暂无评论,来抢沙发