基于多线程中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()的用法实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java加密解密示例分享

    java加密解密示例分享

    想要创造一个只有自己能看懂的文件吗?那就是对数据加密吧,下面分享一个java的数据加密与解密示例
    2014-01-01
  • 使用JAVA实现高并发无锁数据库操作步骤分享

    使用JAVA实现高并发无锁数据库操作步骤分享

    一个在线2k的游戏,每秒钟并发都吓死人。传统的hibernate直接插库基本上是不可行的。我就一步步推导出一个无锁的数据库操作,详情看下文
    2013-11-11
  • 关于多线程常用方法以及对锁的控制(详解)

    关于多线程常用方法以及对锁的控制(详解)

    下面小编就为大家带来一篇关于多线程常用方法以及对锁的控制(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • 新手初学Java常见排序算法

    新手初学Java常见排序算法

    排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列
    2021-07-07
  • 深入讲解spring boot中servlet的启动过程与原理

    深入讲解spring boot中servlet的启动过程与原理

    这篇文章主要给大家介绍了关于spring boot中servlet启动过程与原理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-07-07
  • Java 反射之私有字段和方法详细介绍

    Java 反射之私有字段和方法详细介绍

    本文将介绍Java 反射之私有字段和方法的应用,需呀了解的朋友可以参考下
    2012-11-11
  • Java中5种异步实现的方式详解

    Java中5种异步实现的方式详解

    同步操作如果遇到一个耗时的方法,需要阻塞等待,那么我们有没有办法解决呢?让它异步执行,下面我会详解异步及实现,需要的可以参考一下
    2022-09-09
  • Jackson常用方法以及jacksonUtil工具类详解

    Jackson常用方法以及jacksonUtil工具类详解

    这篇文章主要介绍了Jackson常用方法以及jacksonUtil工具类详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Java利用opencv实现用字符展示视频或图片的方法

    Java利用opencv实现用字符展示视频或图片的方法

    这篇文章主要介绍了Java利用opencv实现用字符展示视频或图片的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Java 自定义注解及利用反射读取注解的实例

    Java 自定义注解及利用反射读取注解的实例

    下面小编就为大家带来一篇Java 自定义注解及利用反射读取注解的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08

最新评论