顺序执行T1、T2、T3三个线程:join()方法的使用

join()方法的作用

Thread类中的join方法的主要作用就是同步,它可以使得线程之间的并行执行变为串行执行。当我们调用某个线程的这个方法时,这个方法会挂起调用线程,直到被调用线程结束执行,调用线程才会继续执行。

Demo

package exer;

public class ThreadInSequence{
          
   
    static ThreadInSequence t = new ThreadInSequence();
    class T1 extends Thread{
          
   
        @Override
        public void run() {
          
   
            System.out.println("t1");
        }
    }
    class T2 extends Thread{
          
   
        @Override
        public void run() {
          
   
            System.out.println("t2");
        }
    }
    class T3 extends Thread{
          
   
        @Override
        public void run() {
          
   
            System.out.println("t3");
        }
    }

    public static void main(String[] args) {
          
   
    	// T1执行完毕后,再执行其他线程
        t.new T1().start();
        try {
          
   
            t.new T1().join();
        } catch (InterruptedException e) {
          
   
            e.printStackTrace();
        }

        t.new T2().start();
        try {
          
   
            t.new T2().join();
        } catch (InterruptedException e) {
          
   
            e.printStackTrace();
        }

        t.new T3().start();
        try {
          
   
            t.new T3().join();
        } catch (InterruptedException e) {
          
   
            e.printStackTrace();
        }
    }
}
输出结果是: T1 T2 T3
经验分享 程序员 微信小程序 职场和发展