多线程共享资源的问题

来源:2-3 应用Runnable模拟卖票

沈真成是被选召的孩子

2016-01-03 12:35

我出现了楼上的情况后改了代码: public void run() { 

 while(number>0){ 

     System.out.println(Thread.currentThread().getName()+"卖出一张票,还剩"+(--number)); 

     }

 } 但最后输出结果仍然没变 什么鬼 输出:

 商店2卖出一张票,还剩4 

商店3卖出一张票,还剩3 

商店1卖出一张票,还剩4 

商店3卖出一张票,还剩1 

商店2卖出一张票,还剩2 

商店1卖出一张票,还剩0

http://img.mukewang.com/5688a50b000116f109500585.jpg

写回答 关注

1回答

  • 絮絮念秋风
    2016-01-03 13:24:19
    已采纳

    你没有加同步块吧?synchroized

    沈真成是被选...

    我终于知道了 谢谢

    2016-01-03 15:30:09

    共 2 条回复 >

细说多线程之Thread VS Runnable

认识Thread和Runnable的区别,以及使用jstack生成线程快照

55316 学习 · 73 问题

查看课程

相似问题