我想杀死一个特定的线程,但无法找到让它工作的方法。我接下来会包含所有信息,即使它看起来并不重要:
我使用动作栏 sherlock 并想在动作按钮事件上杀死一个线程。所以我有:
Thread myThread;
myThread = new Thread(new Runnable(){
public void run(){
functionX();
}
});
myThread.start();
该线程是一个长时间运行的线程,并且 funcionX() 也创建了一些新线程。我想在以下情况下杀死线程:
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()) {
case android.R.id.home:
myThread.interrupt();
break;
};
我已经尝试使用 ExecutorService,使用 submit(runnable) 作为 Future 结果和 Future.cancel 但似乎不起作用。我还应该提到 functionX() 使用 http get 请求从 JSON 服务获取数据。