2 xiaoyan 12 xiaoyan_12 于 2012.10.18 15:31 提问

完全终止一个Android线程问题

一个服务在后台运行它自己的线程。我想终止那个服务包括它的线程。
我创建了这样的线程并运行它:

public class DaemonService extends Service {

     private DaemonThread thread;
     class DaemonThread extends Thread {
          public void run()
          {
               runDaemon(mArgv.toArray(), mConfig);
          }
     }

     public void onStart(Intent intent, int startId) {
          thread = new DaemonThread();
          thread.start();
    }
 }

如何终止服务并同时终止线程呢?

2个回答

csh_34
csh_34   2012.10.18 17:42
已采纳

试用这个方法:

public void stopThread(){
  if(myService.getThread()!=null){
      myService.getThread().interrupt();
      myService.setThread(null);
  }
}
hcg_21
hcg_21   2012.10.19 11:55

在服务中使用onDestroy方法

public void onDestroy(){

         thread.stop();
         super.onDestroy(); 
 }

再用stopService()方法终止服务。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!