黑马程序员技术交流社区

标题: 线程同步 [打印本页]

作者: Toxicant    时间: 2016-9-11 22:50
标题: 线程同步
public void run() {
  synchronized (lock) {
   while (true) {
    if(num>0){
    System.out.println(Thread.currentThread().getName() + "要卖第" + num + "张票");
    num--;
    }   }  } }
SealWindow sealWindow = new SealWindow();
  Thread t1= new Thread(sealWindow,"窗口1");
  Thread t2= new Thread(sealWindow,"窗口2");
  t1.start();
  t2.start();
我写的这段代码为什么只有t1运行,线程t2没运行

作者: 爱学习爱java..    时间: 2016-9-11 22:56
锁在while的 里面
作者: Toxicant    时间: 2016-9-11 23:01
爱学习爱java.. 发表于 2016-9-11 22:56
锁在while的 里面

吆西,谢谢,已解决
作者: LShu    时间: 2016-9-12 00:27
同步代码块那里的所对象应该放在while里面




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2