Join
其实很好理解就是线程没有执行这个方法是,子线程和主线程由cpu随机调度,但是一旦执行这个方法,就先将子线程执行完之后才能对主线程进行执行,如果此时主线程正在执行那么先停止主线程去执行子线程,子线程执行完之后主线程接着执行
package Thread; public class TestJoin implements Runnable{ @Override public void run() { for (int i = 0; i < 200; i++) { System.out.println("我是vip"+i); } } public static void main(String[] args) { TestJoin tj = new TestJoin(); Thread th = new Thread(tj); th.start(); for (int i = 0; i < 1000; i++) { if(i==200){ try { th.join(); } catch (InterruptedException e) { e.printStackTrace(); } } System.out.println("我没有vip"+i); } } }