我的情况:
第一个OnPostExecute调用函数A
在A中,新的另一个第二个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调用,我该怎么办? 任何帮助将不胜感激!谢谢!
答案 0 :(得分:0)
你需要等待B:
B.execute().get();