基于多线程中join()的用法实例讲解
更新时间:2017年10月13日 09:47:33 投稿:jingxian
下面小编就为大家带来一篇基于多线程中join()的用法实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Thread中,join()方法的作用是调用线程等待该线程完成后,才能继续用下运行。
public class TestThread5 { public static void main(String[] args) throws InterruptedException { Runner0 run5 = new Runner0(); Thread th5 = new Thread(run5); th5.start(); th5.join();//join()方法用在此处是为了等待主线程结束后运行子线程 for(int i=0;i<5;i++){ System.out.println("子线程:"+i); } } } class Runner0 implements Runnable{ public void run(){ for(int i=0;i<5;i++) System.out.println("主线程:"+i); } }
上述代码的运行结构如下所示:
当然,如果不使用join()方法
public class TestThread6{ public static void main(String[] args) throws InterruptedException { Runner0 run5 = new Runner0(); Thread th5 = new Thread(run5); th5.start(); // th5.join(); for(int i=0;i<4;i++){ System.out.println("子线程:"+i); } } } class Runner0 implements Runnable{ public void run(){ for(int i=0;i<4;i++) System.out.println("主线程:"+i); } }
如上代码注释掉jion()方法,
根据上面两个不同的代码,输出的不同,很容易就能理解join()方法。
以上这篇基于多线程中join()的用法实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
深入讲解spring boot中servlet的启动过程与原理
这篇文章主要给大家介绍了关于spring boot中servlet启动过程与原理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2018-07-07
最新评论