package thread;
class MyThread extends Thread{
public MyThread(String name){
super(name);
}
public void run(){
System.out.println(getName() + " - Begin...");
for(int i = 0;i < 10;i++){
System.out.println(getName() + " - " + i);
try{
sleep(500);
}catch (InterruptedException e){
}
}
System.out.println(getName() + " - End...");
}
}
public class Test {
public static void main(String[] args) {
MyThread t1 = new MyThread("THread One");
MyThread t2 = new MyThread("THread Two");
t1.start();
t2.start();
}
}
本来是应该xxx one xxx two轮流打印的,但有时候会打印如下结果或者其他什么看上去不是很正常的结果是什么原因啊?
THread One - Begin...
THread One - 0
THread Two - Begin...
THread Two - 0
THread One - 1
THread Two - 1
THread One - 2
THread Two - 2
THread Two - 3
THread One - 3
THread One - 4
THread Two - 4
THread Two - 5
THread One - 5
THread Two - 6
THread One - 6
THread One - 7
THread Two - 7
THread Two - 8
THread One - 8
THread One - 9
THread Two - 9
THread Two - End...
THread One - End...