单选题
有两个并发执行的进程P1和P2,共享初值为1的变量x。P1对x加1,P2对x减1。加1和减1操作的指令序列分别如下所示。
//加1操作 //减1操作
load R1,x ①//取x到寄存器R1中 load R2,x ④
inc R1 ② dec R2 ⑤
store x,R1 ③//将R1的内容存入x store x,R2 ⑥
两个操作完成后,x的值______。
A.可能为-1或3
B.只能为1
C.可能为0、1或2
D.可能为-1、0、1或2
A
B
C
D
【正确答案】
C
【答案解析】
[解析] 执行①②③④⑤⑥结果为1,执行①②④⑤⑥③结果为2,执行④⑤①②③⑥结果为0,结果-1无法得到。
提交答案
关闭