代码执行结果不同。
来源:7-2 J.U.C-FutureTask-2
![](http://img1.sycdn.imooc.com/user/545847f50001126402200220-100-100.jpg)
慕运维6192945
2018-05-09
同样的代码,为什么我的代码先执行的do something in main, 后执行的do something in callable呢?这个和线程优先级有关系吗?
写回答
2回答
-
慕运维6192945
提问者
2018-05-09
其实您说的这个我能理解,我奇怪的点是为啥您的代码一直是callable里的先执行,我的一直是main先执行,这里比较迷惑
012018-06-07 -
Jimin
2018-05-09
你好,当前线程额外启动了一个线程,这时当前线程和额外启动的线程由于受CPU调度的影响,执行先后并不是完全确定的,你如果多执行几次,应该也会出现我课程演示时相同的结果。
不过有一点可以肯定的是,发生这种情况时,大家执行的时间都会非常的接近,应该是毫秒级别相差无几。
这个例子也说明了一个问题,就是两个线程定义的先后顺序决定不了执行的顺序。
00
相似问题