多线程编程:保证T1、T2、T3三个线程顺序执行
package com.company.niuke.Thread;
class ThreadJoin extends Thread{
public ThreadJoin(String name){
super(name);
}
@Override
public void run(){
for(int i=0;i<1000;i++){
System.out.println(this.getName() + ":" + i);
}
}
}
public class ThreadJoinTest {
public static void main(String[] args) throws InterruptedException{
ThreadJoin t1 = new ThreadJoin("春");
ThreadJoin t2 = new ThreadJoin("夏");
t1.start();
t1.join();
t2.start();
}
}
package com.company.niuke.Thread;
public class ThreadTestSync {
public static void main(String[] args) throws InterruptedException{
ThreadJoin2 t1 = new ThreadJoin2("t1");
ThreadJoin2 t2 = new ThreadJoin2("t2");
ThreadJoin2 t3 = new ThreadJoin2("t3");
t1.start();
t1.join();
t2.start();
t2.join();
t3.start();
t3.join();
}
}
class ThreadJoin2 extends Thread{
public ThreadJoin2(String name){
super(name);
}
@Override
public void run(){
for(int i=0;i<5;i++){
System.out.println(this.getName()+":"+i);
}
}
}