文章
161
粉丝
0
获赞
0
访问
32.7k

评分及理由
(1)得分及理由(满分4分)
学生答案指出了两处错误并给出了正确的修改:
if (key == TRUE) 改为 while (key == TRUE)。lock = TRUE; 改为 lock = FALSE;。这两处修改与标准答案完全一致,正确实现了临界区互斥。因此,本小题得满分4分。
(2)得分及理由(满分3分)
学生答案第一问回答“不可以”,正确。
第二问给出的理由是“因为交换值的过程要保证其原子性,否则可能会发生错误访问临界区”。该理由准确地指出了问题的核心:swap指令是原子操作,而函数调用newSwap在多线程并发执行时无法保证原子性,可能导致互斥失效。理由与标准答案的核心观点一致。
因此,本小题得满分3分。
题目总分:4+3=7分
登录后发布评论
暂无评论,来抢沙发