本帖最后由 戴振良 于 2012-3-21 12:44 编辑
- public class ThreadTest01 implements Runnable {
- public void run() {
- int tickets=100;
- while(true) {
- if(tickets!=0)
- {
- try{Thread.sleep(10);}catch(Exception e) {}
- System.out.println(Thread.currentThread().getName()+": "+tickets--);
- }
- }
- }
- public static void main(String[] args) {
- ThreadTest01 tt = new ThreadTest01();
- new Thread(tt).start();
- new Thread(tt).start();
- new Thread(tt).start();
- new Thread(tt).start();
- }
- }
复制代码 我看张孝详的视频里是会打出按顺序的数字,从100~0,-1,-2,而我的好像代码跟张老师都一样的,但是
- 打出来的却是每个数字打4次
- 而且次每次的线程执行顺序还相同
- 只打印到1,没有打印0,-1,-2
如图:
这是为什么呢?不知道是我代码哪里不对,还是说机子不同结果不同,但是也不应该相差这么大吧。 |