如何管理多个数据同步线程

时间:2013-07-02 08:06:37

标签: java android

我有两个线程,每个线程从服务器或服务器以一种方式处理同步数据。从服务器获取数据的线程需要每天运行一次。另一个向服务器发送数据需要每15分钟运行一次。我目前正在使用Alarm Manager为每个线程创建重复警报。然后由BroadcastReceiver接收,我从中调用一个活动,然后根据传入活动的数据运行服务器同步线程或服务器同步线程。我正在使用该活动来显示一个对话框,以防止用户在完成同步之前使用该应用程序,因为它们都访问应用程序所需的数据库。这是完成此任务的正确方法,还是有更好的选择?

提前谢谢

1 个答案:

答案 0 :(得分:1)

这个问题并不适合所有......这更像是一场辩论而没有关于你的应用如何运作的任何细节。

无论如何,我会使用Android服务来执行此操作。您无需为了上传数据而烦扰用户。也为什么阻止使用该应用程序上传?由于上传只需要阅读,只需创建当前数据的快照并上传即可。用户现在正在进行的任何更改都将在下次上传时上传,因此这不是问题。

对于下载,您很可能需要阻止应用程序使用,但可能不会。这取决于应用程序的工作方式。您可以启动数据库事务以避免这样做。