背景
多线程的线程插队执行-join。
实现
join方法会强制让线程执行,并在线程执行结束后再开始执行其它线程。
代码
package com.langjialing;
import java.awt.*;
public class ThreadJoin implements Runnable{
@Override
public void run() {
for (int i = 0; i < 1000; i++) {
System.out.println("VIP线程……" + i);
}
}
public static void main(String[] args) throws InterruptedException, AWTException {
ThreadJoin tj = new ThreadJoin();
Thread thread = new Thread(tj);
thread.start();
// Robot r = new Robot();
// r.delay(3000);
for (int i = 0; i < 500; i++) {
System.out.println("主线程……" + i);
if (i == 200){
thread.join();
}
}
}
}
效果
从此效果图可以明显看出:主线程与VIP线程是同时执行的。但在主线程执行到200时,开启join方法,此后全部执行VIP线程,直到VIP线程执行结束后再继续主线程的执行。
总结
Thread的join方法可以强制插队执行线程。