黑马程序员技术交流社区
标题:
问一个关于多线程的问题
[打印本页]
作者:
我有上将潘凤
时间:
2016-5-17 22:31
标题:
问一个关于多线程的问题
class Example02 {
public static void main(String[] args) {
TicketWindow r = new TicketWindow();
new Thread(r,"窗口1").start();
new Thread(r,"窗口2").start();
new Thread(r,"窗口3").start();
new Thread(r,"窗口4").start();
while (r.count>=100) {
System.out.println(r.count);
}
}
}
class TicketWindow implements Runnable {
int number = 100;
int count = 0;
public void run() {
Thread th = Thread.currentThread();
String name = th.getName();
while (number>0) {
try {
Thread.sleep(1000);
}
catch (Exception e) {
e.printStackTrace();
}
//System.out.println(name+"正在发售第"+(number--)+"张票。");
System.out.println(name+"正在发售第"+(number)+"张票。");
number--;
count++;
}
}
}
为什么:1.System.out.println(name+"正在发售第"+(number--)+"张票。");
2.System.out.println(name+"正在发售第"+(number)+"张票。");
number--;
数出的结果不一样?第一种是每个数字输出一次,第二种输出看不懂。
为什么:主方法里面的while循环里面的语句不会输出,count++后应该大于100了啊。
作者:
zhangjinbu
时间:
2016-5-17 22:38
给你点个赞!!!!!!!!!!
作者:
何亚辉
时间:
2016-5-17 23:25
问得太好了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2