【问题标题】:How to manage number of threads inside Sync Task如何管理同步任务中的线程数
【发布时间】:2013-03-28 19:42:19
【问题描述】:

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

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

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

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

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

提前致谢。

【问题讨论】:

    标签: java android multithreading synchronization android-asynctask


    【解决方案1】:
    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
    

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 但是我怎样才能减少迭代服务器调用的时间。如何一次执行多个调用。
      猜你喜欢
      • 1970-01-01
      • 2017-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-26
      • 2021-01-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多