使用SQLite的多个IntentService实例

时间:2013-05-13 12:27:35

标签: sqlite intentservice

我有一个执行以下操作的IntentService:   - (可能)在SQLite数据库中添加一个条目   - 遍历数据库中的条目以查看是否应采取措施,如果是,则更新/删除条目

当一个已经运行时,可能会创建一个新的IntentService,这意味着他们必须争夺数据库访问权。由于我对线程的不存在经验,以及对数据库的一般经验非常有限,我不确定如何最好地处理这个问题。

我的计划是这样的:  ( - 如果添加条目,锁定数据库,添加条目,解锁数据库)

  • 锁定数据库
  • 返回要处理的第一个条目(如果有)
  • 更新条目,以便后续数据库扫描不会将条目作为应处理的条目返回
  • 解锁数据库
  • 流程条目
  • 如果条目成功处理,则锁定数据库,从数据库中删除条目,解锁数据库
  • 重复,直到不再有待处理的条目

这对我来说很有意义,在纸上...... IntentService的多个实例应该能够并行工作。虽然我希望一次只有一个IntentService可以做它的事情,因为它们也将执行网络操作。这是一个好方法吗?有更好的方法吗?

0 个答案:

没有答案