繁体   English   中英

如何在android中停止ASyncTask线程

[英]how to stop ASyncTask thread in android

can anybody have any idea how to stop ASyncTask thread in android?.

实际上我有一个创建线程并执行它们的循环。 当这个循环结束时,我想停止所有运行的线程。 无论如何要停止线程?

非常感谢。

根据我使用AsyncTask经验,调用cancel(boolean mayInterruptIfRunning)不一定会停止执行后台进程。 所有这一切似乎发生的是, AsyncTask将执行onCancelled()并且将无法运行onPostExecute()当它完成。 行为可能取决于你在doInBackgound()确切代码

在我的情况下,我使用HttpPost,HttpGet等执行服务器请求。 我发现结束AsyncTask的唯一方法是调用abort()方法,如下例所示

if (isCancelled) {
     try {
         //cancel the task and immediately abort the HttpRequest
         uploadTask.cancel(true);
         post.abort();
     } catch (UnsupportedOperationException e) {
         e.printStackTrace();
     }
} 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM