线程暂停有那些具体的方法? - -区别在那?--如何再启动. run()可否做为此种方法使用.若不能如何使用.

解决方案 »

  1.   

    可以用Thread.sleep()方法来暂停运行,需要恢复的时候对这个线程实例调用interrupt(),则sleep()会抛出InterruptedException,捕获这个异常后即可恢复运行。
    不过更好的办法是检查一个变量的值,比如bool suspended,其他线程通过将此变量设为false来促使这个线程恢复运行,这种情况下此线程就不能调用Thread.sleep(someMillis)来挂起了,需要做一个循环,不断的检查suspended的值,如果是true就sleep(1000)(一秒,也可以更短)或者yield()交出CPU使用权,如果是false就恢复运行线程处理部分的代码。