5

我正在寻找的是找到一种方法来管理 Asyntask 中的多个线程。

我需要将本地数据库与服务器更新同步。这可能是可以使用分页检索的大数据。

谁能告诉我在 asyntask 内的循环中管理生成线程的首选方法是什么,以便它可以显示进度对话框,直到所有线程完成。

我不太担心本地数据库对象及其在执行不同线程期间的同步,以便从服务器下载数据并将数据保存/更新到本地数据库中。

注意:我无法在单个服务器调用中从服务器下载所有数据。

提前致谢。

4

2 回答 2

2

如果是长时间运行的操作,您应该使用 IntentService 而不是 AsyncTask。IntentService 独立于 UI,因此您可以在后台运行它。要更新 UI,您可以发送广播意图。我使用 IntentService 进行数据库同步。我从服务器获取数据,在解析时创建批量更新,然后使用批量更新更新本地数据库。

于 2013-04-06T11:23:00.877 回答
0
Try this ,    

You can set a static variable that is initialized to zero, and it is incremented 
by each thread .check this variable in asynctask,if it is equal to the no: of threads 
in your class finish it.Simple But works
于 2013-04-06T11:31:20.903 回答