答案 0 :(得分:1)
假设一条线不被视为原子操作,您可以将基于其自身值修改x的任何线拆分为读取和写入< / em>部分。只对一个人执行此操作,例如从increase
函数执行此操作,产生:
y = 5;
int temporary = x; // read value
temporary += y;
x = temporary; // write modified value back
x++; // this could be split up similarly
z = /* whatever */;
使用这个“扩展”代码序列,您可以毫无困难地查找具有x
不同结果值的操作序列。