线程强制执行
Thread.join();方法线程强制执行
Join合并线程,待线程执行完成后,在执行其他线程
线程强制执行案例插队
解释:当子线程和主线程开始执行时,两个线程并行交替执行,当主线程到一定界限后执行线程强制join()方法
会让子线程接着执行直到线程结束,然后再执行子线程
package com.impl.threadJoin;
public class TestJoin implements Runnable{
@Override
public void run() {
for (int i = 0; i <= 10; i++) {
System.out.println("子线程来了" + i);
}
}
public static void main(String[] args) throws InterruptedException {
TestJoin testJoin = new TestJoin();
Thread thread = new Thread(testJoin);
thread.start();
for (int i = 0; i <= 100; i++) {
if(i==20){
thread.join();//插队
}
System.out.println("主main线程" + i);
}
}
}
/*
main线程0
main线程1
main线程2
main线程3
main线程4
main线程5
main线程6
main线程7
main线程8
main线程9
main线程10
main线程11
main线程12
main线程13
main线程14
main线程15
线程来了0
main线程16
线程来了1
main线程17
main线程18
线程来了2
线程来了3
main线程19
线程来了4
线程来了5
线程来了6
线程来了7
线程来了8
线程来了9
线程来了10
main线程20
main线程21
main线程22
main线程23
main线程24
main线程25
main线程26
main线程27
main线程28
main线程29
main线程30
main线程31
main线程32
main线程33
main线程34
main线程35
main线程36
main线程37
main线程38
main线程39
main线程40
main线程41
main线程42
main线程43
main线程44
main线程45
main线程46
main线程47
main线程48
main线程49
main线程50
main线程51
main线程52
main线程53
main线程54
main线程55
main线程56
main线程57
main线程58
main线程59
main线程60
main线程61
main线程62
main线程63
main线程64
main线程65
main线程66
main线程67
main线程68
main线程69
main线程70
main线程71
main线程72
main线程73
main线程74
main线程75
main线程76
main线程77
main线程78
main线程79
main线程80
main线程81
main线程82
main线程83
main线程84
main线程85
main线程86
main线程87
main线程88
main线程89
main线程90
main线程91
main线程92
main线程93
main线程94
main线程95
main线程96
main线程97
main线程98
main线程99
main线程100
*/