xiaoyan_12
xiaoyan_12
2012-10-18 07:31
采纳率: 84.9%
浏览 8.1k

完全终止一个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 09:42
    已采纳

    试用这个方法:

    public void stopThread(){
      if(myService.getThread()!=null){
          myService.getThread().interrupt();
          myService.setThread(null);
      }
    }
    
    点赞 评论
  • hcg_21
    hcg_21 2012-10-19 03:55

    在服务中使用onDestroy方法

    public void onDestroy(){
    
             thread.stop();
             super.onDestroy(); 
     }
    

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

    点赞 评论

相关推荐