Java多线程中join方法详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java多线程中join方法详解相关的知识,希望对你有一定的参考价值。
join()方法用于让当前执行线程等待join线程执行结束。其实现原理是不停的检查join线程是否存活,如果join线程存活则让当前线程永远等待。
join()方法部分实现细节
while(isAlive())
{
wait(0)
}
其中wait(0)表示永远等待下去。
join线程中止后,线程的this.notifyAll()方法会被调用,调用notifyAll()是在JVM里调用的所有在JDK中看不到,大家可以看JVM源码
示例程序:
public calss ThreadTest{
public static void main(String[] args) throws Exception
{
Thread parser1 = new Thread(new Runnable(){
public void run(){}
});
Thread parser2 = new Thread(new Runnable(){
public void run(){}
});
parser1.start();
parser2.start();
parser1.join();
parser2.join();
System.out.println("all parser finish");
}
}
以上是关于Java多线程中join方法详解的主要内容,如果未能解决你的问题,请参考以下文章