为了账号安全,请及时绑定邮箱和手机立即绑定

帮忙看一下,多线程join()的问题

帮忙看一下,多线程join()的问题

予别她 2017-11-13 20:45:04
public class Test{   public static void main(String[] args){     NewThread t1 = new NewThread("One");     NewThread t2 = new NewThread("Two");     NewThread t3 = new NewThread("Three");     try{       t1.join();       t2.join();       t3.join();     }catch(Exception ex){       ex.printStackTrace();     }     System.out.println("所有线程运行结束");   } } class NewThread extends Thread{   public NewThread(String ThreadName){     Thread t = new Thread(this,ThreadName);     t.start();   }      @Override   public void run(){     for(int i = 0; i < 5; i++){       System.out.println(Thread.currentThread().getName()+":"+i);     }   } }“所有线程运行结束”这句话应该是在这三个线程运行结束后才打印的,但是于行了好几次都是随机的位置打印,好像那个join()方法没有起作用,不知道错在哪里了
查看完整描述

1 回答

?
慕的地2067727

TA贡献7条经验 获得超1个赞

你构造NewThread中 有个t.start()  好像已经开跑了   

查看完整回答
反对 回复 2017-11-14
  • 1 回答
  • 0 关注
  • 704 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信