关于一个 onPostExecute 调用另一个 onPostExecute 的事情

Something about one onPostExecute call another onPostExecute

我的情况:

首先OnPostExecute调用函数A

在A中,新建另一个Second OnPostExecute来调用函数B

为什么 A 会比 B 先完成?

例如:

public class ToStart extends otherClass{
    public void execute(){
        Target A = new Target("A");
        A.execute();
    }
    public void print(String target){
        Log.v(LOG_TAG, target + " time: " + System.currentTimeMillis());
        if(target.equals("A")){
             Target B = new Target("B");
             B.execute();
        }
    }
    public class Target extends otherClass {
        private String target;

        public Target(String target) {
            this.target = target;
        }

        protected void onPostExecute (String webData){
            super.onPostExecute(webData);
            printTime(target);
        }

        protected String doInBackground(String... params){
            return super.doInBackground(params);
        }
    }
}

结果:

A time: 1459766772187
B time: 1459766772209

如果我想让B先完成,而B必须被A调用,我该怎么办? 任何帮助将不胜感激!谢谢!

您需要等待B:

B.execute().get();