Java中怎么实现join线程操作
创始人
2024-12-22 16:02:28
0次

一 点睛

Tread提供了让一个线程等待另外一个线程完成的方法——join()方法。当在某个程序执行流中调用其他线程的join()方法时,调用线程将被阻塞,直到被join()方法加入的join线程执行完后为止。

join()方法通常由使用线程的程序调用,以将大问题划分成许多小问题,每个小问题分配一个线程。当所有小问题都得到处理后,再调用主线程来进一步操作。

二 代码

public class JoinThread extends Thread{   // 提供一个有参数的构造器,用于设置该线程的名字   public JoinThread(String name)   {      super(name);   }   // 重写run()方法,定义线程执行体   public void run()   {      for (int i = 0; i < 100 ; i++ )      {        System.out.println(getName() + " " + i);      }   }   public static void main(String[] args)throws Exception   {      // 启动子线程      new JoinThread("新线程").start();      for (int i = 0; i < 100 ; i++ )      {        if (i == 20)        {           JoinThread jt = new JoinThread("被Join的线程");           jt.start();           // main线程调用了jt线程的join()方法,main线程           // 必须等jt执行结束才会向下执行           jt.join();        }        System.out.println(Thread.currentThread().getName()           + " " + i);      }   }}

三 运行结果

main 0main 1main 2main 3main 4main 5main 6新线程 0......新线程 11新线程 12新线程 13main 7main 8......main 16main 17新线程 14main 18main 19新线程 15新线程 16......新线程 31被Join的线程 0新线程 32被Join的线程 1新线程 33被Join的线程 2新线程 34被Join的线程 3新线程 35新线程 36新线程 37新线程 38新线程 39被Join的线程 4被Join的线程 5......被Join的线程 13被Join的线程 14新线程 40被Join的线程 15被Join的线程 16被Join的线程 17新线程 41新线程 42被Join的线程 18被Join的线程 19......被Join的线程 38被Join的线程 39新线程 43新线程 44新线程 45被Join的线程 40被Join的线程 41被Join的线程 42被Join的线程 43新线程 46新线程 47新线程 48......新线程 60新线程 61被Join的线程 44......被Join的线程 98被Join的线程 99新线程 62新线程 63......新线程 98新线程 99main 20main 21main 22main 23

四 说明

1 程序开始是mian线程和新线程并发执行。

2 当i为20时,main线程开始等待“被Join的线程”执行完成,此时“被Join的线程”和“新线程”并发执行。

3 当“被Join的线程”执行完成,main线程继续运行,此时“main”和“新线程”并发执行。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...