多线程之(线程加入)

线程加入

与其说线程加入,不如说线程插队。关系户线程先执行完,在这个看关系的年代很有用。
回到代码层面

package cn.zl.ThreadTest;
// 线程加入
public class ThreadJoin {
    public static void main(String[] args) {
        // 创建线程
        Thread thread1 = new Thread(new Thread1());
        Thread thread2 = new Thread(new Thread2());
        // 启动线程
        thread1.start();
        // 在线程1启动后,就让线程1join。效果才会明显。
        try {
            thread1.join();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        thread2.start();
    }
}
class Thread1 implements Runnable {
    private int num = 100;
    @Override
    public void run() {
        while (num > 0) {
            System.out.println("线程1 " + num);
            num--;
        }
    }
}
class Thread2 implements Runnable {
    private int num = 100;
    @Override
    public void run() {
        while (num > 0) {
            System.out.println("线程2 " + num);
            num--;
        }
    }
}

看执行结果,就会发现每次都是线程1先执行完,在执行线程2。通过这个我们可以让线程变成串行。

你可能感兴趣的:(多线程之(线程加入))