如何在Android中执行两个线程时运行第三个线程

问题描述:

我正在编写需要与线程一起工作的Android应用程序。
在这个程序中,我有3个线程开始在应用程序的开始。
这里是我的代码:如何在Android中执行两个线程时运行第三个线程

Thread t1,t2,t3; 
protected void onCreate(Bundle savedInstanceState) 
{ 

t1=new Thread(new Runnable() 
{ 
    public void run() 
    { 
     //do some long stuffs 
     t3.notify(); 
    } 
}); 
t2=new Thread(new Runnable() 
{ 
    public void run() 
    { 
     //do some long stuffs 
     t3.notify(); 
    } 
}); 
t3=new Thread(new Runnable() 
{ 
    public void run() 
    { 
     this.wait(); 
     //run after t1 & t2 is done. 
    } 
}); 
t1.start(); 
t2.start(); 
t3.start(); 
} 

现在我要睡觉T3线程并运行它时,T1和T2完成他们的工作。

传递一个T1,T2参照t3和内部的t3.run()等待其他线程:

t1.join(); 
t2.join(); 

像这样:

final Thread t1, t2, t3; 

    t1 = new Thread(new Runnable() { 
     public void run() { 
      //do some long stuffs 
     } 
    }); 

    t2 = new Thread(new Runnable() { 
     public void run() { 
      //do some long stuffs 
     } 
    }); 

    t3 = new Thread(new Runnable() { 
     public void run() { 
      try { 
       t1.join(); 
       t2.join(); 
       // t1 & t2 have finished 
       // continue with t3 stuff 
      } catch (InterruptedException e) { 
       //handle it 
      } 
     } 
    }); 

    t1.start(); 
    t2.start(); 
    t3.start();