java吧 关注:1,285,085贴子:12,810,428
  • 0回复贴,共1

新手求问贴---关于多线程问题(具体内容如图)

只看楼主收藏回复

package timer.test;
import java.util.Timer;
import java.util.TimerTask;
public class Time {
private static int shi=0;
private static int ge=0;
public static void main(String[] args) {
Timer timer=new Timer();
Timer timer1=new Timer();
Timer timer2=new Timer();
TimerTask timertask=new TimerTask() {
@Override
public void run() {
shi++;
}
};
timer.schedule(timertask, 500,10000);
TimerTask timertask1=new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
ge++;
}
};
timer1.schedule(timertask1, 600,1000);
TimerTask timertask2=new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
System.out.print(shi*10+ge+"、");
}
};
timer2.schedule(timertask2, 700,1000);
}
}

疑惑:为什么到20后就把21、22、23.....等跳过了?
正确输出不该是:11、12、13、14、15、16、17、18、19、20、21、22、23、24.......等等吗?


IP属地:云南1楼2017-12-11 15:05回复