1.可以用线程的suspend()和resume(),不过这两个方法sun已经不赞成再用。
2.在主线程中设置一个标志(标志子线程是否已经运行完),如果子线程没有运行完,则主线程继续在死循环中等待xx秒,否则跳出死循环,往下运行。

解决方案 »

  1.   

    我觉得对于主线程static void main(String s[])中的wait()是没有意义的。
    也是很混乱的。
    可以这样:
    在main中启动线程A,B两个,通过A,B的wait(),notify()来达到你的要求, main() 中不要放太多的东西。
    in A....
    public synchronized void run(){
     ............
     wait();
    }in B
    public void run(){
    ............if.............
       synchronized(A){
          A.notify();
       }
    }