【发布时间】:2011-07-14 11:46:50
【问题描述】:
我有一个 AsyncTask 并且 doInBackground 方法正在实现通常需要更多时间的东西。所以我正在做两个异步任务,当第二个开始时,我想停止第一个。
因此,如果我有
@Override
protected Bitmap doInBackground(Integer... params) {
books.download(13);
}
而真正重要的部分发生在 download(int) 方法中。
现在,当我在此任务上执行 cancel(true) 时,我希望停止下载。因此,我希望 books.download(13) 方法能够中断。
有什么办法吗?
【问题讨论】:
-
我认为我们需要更多代码。 book.download 是如何实现的?此外,您的示例无法编译。
-
你的下载方法是做什么的?
-
books.download(int) 不是我的方法 :( 这就是为什么我无法更好地控制它。我将它用作我正在使用的专有库的一部分。
-
一篇关于如何取消异步任务的好帖子quicktips.in/correct-way-to-cancel-an-asynctask-in-android
标签: java android multithreading android-asynctask