android - 即使调用 asyncTask().execute().get() 也会触发 onPostExecute() 吗?
问题描述
假设我有一个这样的 AsyncTask :
public class MyAsyncTask extends AsyncTask<Void,Void,Boolean>{
@Override
protected Boolean doInBackground(Void... voids){
// Do some stuff
return true;
}
@Override
protected Void onPostExecute(Boolean b){
// Do Some UI Changes
}
}
但是 如果我调用myAsyncTask().execute().get()而不是调用myAsyncTask().execute( ) , 例如:-
boolean b = new MyAsyncTask().execute.get();
是否仍会应用 onPostExecute() 方法中定义的 UI 更改?换句话说,仍然会调用 onPostExecute() 方法吗?
解决方案
即使您在异步任务上调用 get,也会调用 Post execute
推荐阅读
- android - 在 build.gradle 文件中添加 buildFeatures 后出错
- python - Python 请求不适用于网站 API,但适用于浏览器(chrome)
- sql-server - SSAS 表格模型 - 多个事实表
- java - 我可以使用 identityHashCode 在尊重相同性的对象之间生成 compareTo 吗?
- ios - Swift - didSet 属性未从绑定更改中调用
- javascript - 来自消息事件的工作箱缓存 URL
- flutter - 无法导入字体真棒颤振?
- .net - IMemorycache 不断调用服务器上的 sql
- google-cloud-firestore - “firestore”的“CreateTime”和“UpdateTime”不能作为搜索条件吗?
- swift - 在 xcode 12.2 上构建 jitsiMeet SDK 2.11.0 时遇到问题