gpt4 book ai didi

java - Android 两个AsyncTasks 串行执行还是并行执行? - 第二个是卡住,但结果还可以

转载 作者:搜寻专家 更新时间:2023-10-30 19:48:46 25 4
gpt4 key购买 nike

我在我的 Android 应用程序中运行两个 AsyncTask 任务,它们来自同一个类但具有不同的参数。例如:

new myAsynckTask(a,b,c).execute();
new myAssyncTask(a,d,e).execute();

它们是并行执行还是串行执行?我问这个是因为当第一个开始时,显示执行进度,当完成时我看到第二个需要更多时间才能完成但我看不到进度(我能够看到矩形但进度条未显示 20%..等等)。就像卡住一样,但结果还可以。

我想做的是按顺序运行它们,并能够看到它们两个的进度。我在 Android Jelly Bean 4.2.2 API 级别 17 上运行该应用

最佳答案

Do they execute in parallel or in a serial order?

如果您的 android:targetSdkVersion 为 13 或更高,并且您运行在 Android 3.2 或更高版本的设备上,它们将被串行执行。

如果您在 Android 1.5 上运行,它们将串行执行。

否则,它们将并行执行。

您可以通过将 execute() 替换为 executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR) 来选择并行执行。

有关更多信息,请参阅 the AsyncTask JavaDocs 的“执行顺序”部分.

关于java - Android 两个AsyncTasks 串行执行还是并行执行? - 第二个是卡住,但结果还可以,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18661288/

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