例:
首先要把两线程所有的可能执行顺序写出来:
例如此题的执行顺序有:T1T2T1T2 此顺序的执行结果输出:i=3,i=2
T1T1T2T2 i=5,i=0
T1T2T2T1 i=3,i=0
T2T1T2T1 i=1,i=2
T2T1T1T2 i=1,i=4
T2T2T1T1 i=1,i=0
然后在计算输出结果时,看执行顺序,注意T2循环之后i会重新赋值为0,只有执行T2循环时才会有输出结果,所以要注意T2 线程的 执行顺序。 T1是每次执行一次要加2.
由上可知,输出的结果有,0,1,2,3,4,5