Android 取消onPostExecute中的异步任务类
我在检查别人的密码。还有我在那里看到的Android 取消onPostExecute中的异步任务类,android,android-asynctask,Android,Android Asynctask,我在检查别人的密码。还有我在那里看到的 @Override protected void onPostExecute(AutoBookmarkInfo result) { super.onPostExecute(result); // some computation... if (setAutoBookmarkTask != null) { setAutoBookmarkTask.cancel(false);
@Override
protected void onPostExecute(AutoBookmarkInfo result) {
super.onPostExecute(result);
// some computation...
if (setAutoBookmarkTask != null) {
setAutoBookmarkTask.cancel(false);
setAutoBookmarkTask = null;
}
}
setAutoBookmarkTask
-是AsyncTask类的一个实例。
请问,有人能解释一下为什么这家伙在所有工作都已完成的情况下试图取消工作线程吗?
setAutoBookmarkTask.cancel(false)
没有任何意义。如果需要中断或取消异步任务,则必须在参数中传递true。setAutoBookmarkTask不一定与此特定的onPostExecute()
相关,这可以是一些其他的AsyncTask
。我不认为在另一个AsyncTask
的执行后运行一个AsyncTask
是个好主意。我想您知道AsynchTask类的工作流程。正如@g00dy所说,在onPostExecute()方法中添加取消代码是不必要的。如果您想要取消正在运行的任务,您可以在活动中的任何需要的地方添加。如果我理解正确,此代码用于在线程上强制取消。您也可以这样使用