Android:如何使用ThreadPoolExecutor在Android中按顺序下载任务列表?

Android:如何使用ThreadPoolExecutor在Android中按顺序下载任务列表?,android,threadpool,Android,Threadpool,在我的应用程序中,我需要按顺序运行一组任务。每个任务解压文件并将数据更新到数据库。但我在更新来自不同线程的数据时遇到了异常 java.lang.IllegalStateException: database not open` 为了防止这种情况,我使用ThreadPoolExecutor按顺序执行任务,这样我就可以同步数据库。任何人都可以告诉我如何使用ThreadPoolExecutor来完成我的任务。我必须通过哪些参数 问候,, Srinivas使用异步任务。它本身使用threadpoole

在我的应用程序中,我需要按顺序运行一组任务。每个任务解压文件并将数据更新到数据库。但我在更新来自不同线程的数据时遇到了异常

java.lang.IllegalStateException: database not open`
为了防止这种情况,我使用ThreadPoolExecutor按顺序执行任务,这样我就可以同步数据库。任何人都可以告诉我如何使用ThreadPoolExecutor来完成我的任务。我必须通过哪些参数

问候,,
Srinivas使用异步任务。它本身使用threadpoolexecutor,使用起来非常方便。如果要按顺序运行任务,请确保调用前一个asynctask的onpostexecute中的下一个asynctask。

我已尝试在asynctask中执行另一个线程,但不能保证asynctask将执行其内部的线程,并将进入postExecute方法。
您可以查看我的示例。

要使用不同的数据集重复、连续地运行同一任务,最好的选择是使用IntentService。IntentService维护一个队列来保存任务,并使用单个工作线程逐个执行任务


任务生成器将请求发送到IntentService,IntentService将任务添加到队列中,并使用单个工作线程在后台顺序执行它们。要了解如何使用IntentService,请参阅。

ThreadPoolExecutor
并行执行任务。如果希望按顺序执行任务,请使用一个线程。