class ThreadTest01 implements Runnable { int num = 100; // 2、覆盖接口中的run方法。。 @Override public void run() { while (true) { /* * 格式: synchronized(锁对象){ //需要同步的代码 } */ synchronized (Demo1.class) { if (num<=0) { break; } try { Thread.sleep(1); System.out.println( Thread.currentThread().getName() + "出售了" + (1000 - num + 1) + "张票,还剩余:" + (--num) + "张"); /* * this.notify(); this.wait(); */ } catch (InterruptedException e) { e.printStackTrace(); } }请问以上代码块 if (num<=0) {break;}为什么不能改成if (num>0) {}当使用该过后的 回出现负数是怎么回事啊?
3 回答
添加回答
举报
0/150
提交
取消