首页 > 解决方案 > 即使调用 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() 方法吗?

标签: androidandroid-asynctask

解决方案


即使您在异步任务上调用 get,也会调用 Post execute


推荐阅读