我想在线程被start()并执行run()方法完毕后重新启动它,但这时执行start()方法是会抛出IllegalThreadStateException的.  那么我该如何重启这同一个线程呢(在不建立新线程对象的前提下)?

解决方案 »

  1.   

    被销毁了8你可以通过修改run来达到你的目的,用wait notify来控制
      

  2.   

    开始的线程被销毁了,在START()当然是异常了。
      

  3.   

    可以用sleep让线程 暂停指定时间 然后回自动启动
      

  4.   

    可以这样实现 public void run() {
      while (true){
         /**
           这里实现你的操作,实现完后,进行死循环.     
         **/
      }
    }
      

  5.   

    哦,确实不能REstart
    不过线程执行完毕run()后,就可以被置为无用对象而被垃圾回收了,这样再new一个新线程就可以了. 我原先提出这个问题是想"复用"同一个线程对象