我正在寻找的是找到一种方法来管理Asyntask中的许多线程。
我需要将本地数据库与服务器更新同步。这可能是可以使用分页检索的大数据。
任何人都可以告诉我在asctiask内部循环中管理生成线程的首选方法是什么,以便它可以显示Progress Dialog,直到完成所有线程。
我很担心本地数据库对象&它在执行不同线程期间的同步,以便从服务器和服务器上下载数据。保存/更新到本地数据库。
注意:我无法在单个服务器调用中从服务器下载所有数据。
提前致谢。
答案 0 :(得分:2)
如果它是长时间运行的操作,您应该使用IntentService而不是AsyncTask。 IntentService独立于UI,因此您可以在后台运行它。要更新UI,您可以发送广播意图。 我使用IntentService进行数据库同步。我从服务器获取数据,在解析时创建批量更新,然后通过一次批量更新更新本地数据库。
答案 1 :(得分: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