单选题
1分
学生小王在选课时编写了一个程序,为了保证有足够的学分,他先选了课程B,然后继续申请心仪的课程A。若能选到课程A,则退掉课程B。部分程序如下: count.A //表示课程A的信号量cou...
学生小王在选课时编写了一个程序,为了保证有足够的学分,他先选了课程B,然后继续申请心仪的课程A。若能选到课程A,则退掉课程B。部分程序如下:
count.A //表示课程A的信号量
count.B //表示课程B的信号量
{
…
P(count.A);
select_course(A);
relese_course(B);
V(count.B);
…
}
请问:小王的程序能否达到选到课程A又退掉课程B的目的?
count.A //表示课程A的信号量
count.B //表示课程B的信号量
{
…
P(count.A);
select_course(A);
relese_course(B);
V(count.B);
…
}
请问:小王的程序能否达到选到课程A又退掉课程B的目的?
参考答案: C
参考解析: C【解析】当P(count.A);永远阻塞的情况下,小王选不了A课程;若有人退选,小王将完成选到课程A又退掉课程B的目的。故选择C选项。