线程合并
合并是指将指定的某个线程加入到当前线程中,合并为一个线程,由先前的两个线程交替执行变成一个线程中的两个子线程按顺序执行。
通过调用join方法来实现合并,具体如何合并?
线程甲和线程乙,线程甲执行到某个时间点的时候调用线程乙的join方法,则表示从当前时间点开始CPU资源被线程乙独占,线程甲进入阻塞状态,直到线程乙执行完毕,线程甲才进入就绪状态,等待获取CPU资源进而进入运行状态。
join方法重载:
join方法表示乙线程执行完毕之后才能执行其他线程,join(long millis)表示乙线程执行设定的毫秒之后,无论是否执行完毕,其他先都可以和它争夺CPU资源。
package com.mie.test;
public class JoinRunnable1 implements Runnable{
@Override
public void run() {
for (int i = 0; i < 100; i++) {
System.out.println(i+"------joinrunnable1");
}
}
}
package com.mie.test;
public class JoinTest