线程题目

2018-04-25  本文已影响0人  程序员小R

一:有以下四种情况

线程一和线程二重合的情况:

0+1+-2=-1

线程一和线程二部分重合的情况:

0+1+1-2=0

线程一和线程二无重合的情况:

0 +1+-2+1+-2=-2

假设 a 是一个由线程 1 和线程 2 共享的初始值为 0 的全局变量,则线程 1 和线程 2 同时执行下面的代码,最终 a 的结果可能是(-1,0,-2)

boolean isOdd = false;

for(int i=1;i<=2;++i)

{

if(i%2==1)isOdd = true;

else isOdd = false;

a+=i*(isOdd?1:-1);

}

上一篇 下一篇

猜你喜欢

热点阅读