为了账号安全,请及时绑定邮箱和手机立即绑定

看完视频,有一个问题,想请教一下大家

在最后老师解释Runnable接口产生的结果时,剩余3张票时,线程1还没有打印,资源就被线程3占去,等抢回资源的时候才把那句话打印出来,我的问题是,等线程1把资源抢回来,成员变量ticketsCont的值不就被修改了吗,为什么还会打印输出剩余3张?如图:http://img1.sycdn.imooc.com//5832b6af0001c84609410541.jpg

正在回答

3 回答

窗口一已经只差打印了,但是拿不到System.out的资源,其实是3和0还有各种可能都是可能存在的,因为这是线程不安全的。

0 回复 有任何疑惑可以回复我~

这个应该就是内存模型的东西了,当执行--时,让出CPU资源会记录内存快照?

0 回复 有任何疑惑可以回复我~

因为其实字符串在之前就已经拼接好了,只是当一号线程重新拿到cpu资源时才打印出来

1 回复 有任何疑惑可以回复我~
#1

_菲菲菲菲 提问者

是不是跟编译原理有关?
2016-11-22 回复 有任何疑惑可以回复我~
#2

柠檬酱c

那该如何解决这个问题呢?
2017-08-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

看完视频,有一个问题,想请教一下大家

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信