【多線程】線程強制執行 join()
線程強制執行 join()
- Join合并線程,待此線程執行完成后,再執行其他線程,其他線程阻塞 ;
- 可以想象成插隊。
代碼示例:
/**
* @Description 測試join方法
* @Author hzx
* @Date 2022-03-26
*/
public class TestJoin implements Runnable {
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("尊貴的vip來了"+i);
}
}
public static void main(String[] args) throws InterruptedException {
//主線程
for (int i = 0; i < 20; i++) {
if (i==10) {
//插隊線程
TestJoin testJoin = new TestJoin();
Thread thread = new Thread(testJoin);
thread.start(); //啟動線程
thread.join(); //插隊
}
System.out.println("普通人"+i);
}
}
}
執行結果:
普通人0
普通人1
普通人2
普通人3
普通人4
普通人5
普通人6
普通人7
普通人8
普通人9
尊貴的vip來了0
尊貴的vip來了1
尊貴的vip來了2
尊貴的vip來了3
尊貴的vip來了4
尊貴的vip來了5
尊貴的vip來了6
尊貴的vip來了7
尊貴的vip來了8
尊貴的vip來了9
普通人10
普通人11
普通人12
普通人13
普通人14
普通人15
普通人16
普通人17
普通人18
普通人19

浙公網安備 33010602011771號