gpt4 book ai didi

java - doInBackground 需要很长时间才能启动

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:09:46 24 4
gpt4 key购买 nike

有谁知道为什么 doInBackground 需要很长时间才能启动?这是一个例子:

runDoInBackground(){
print("starting task");
new MyAsyncTask(someObject,otherObject).execute((Void)null);
}

private class MyAsyncTask extends<Void,Void,Integer>{
SomeObject someObject;
OtherObject otherObject;

public MyAsyncTask(SomeObject someObject, OtherObject otherObject){
this.someObject=someObject;
this.otherObject = otherObject;
}

@Override
protected Integer doInBackground(Void... params) {
print("start background run")
... work ... get from server ...
}

}

如果运行缓慢的原因是其他干扰线程(我对此表示怀疑),我该如何给予这个最高优先级?

最佳答案

AsyncTasks 的执行方式确实取决于您拥有的 Android 版本。它们在 API5 (2.0) - API 10 (2.3.3) 上并行执行。从 API 11 开始,它们默认再次串行执行。正如 zapl 提到的,你必须调用

task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, (Void)null);

让它们再次并行运行。

关于java - doInBackground 需要很长时间才能启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19778519/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com