【发布时间】:2011-12-26 08:17:12
【问题描述】:
有人知道 Android 中服务的开销有多大吗?
如果有任何其他论点可以帮助我做出以下设计决策。
我有两个 SQLite Db,一个存储实际数据(基本上只读产品库存),另一个存储设置、选定项目列表等。
现在我创建了一个服务来管理这些数据库,主要有两个原因:
- 我希望能够“关闭时保存”(设置),这可以通过 onDestroy 实现
- 加载数据需要一些时间,因此快速关闭应用程序会将数据保留在内存中
从设计的角度来看,我可以:
- 创建一个服务来处理两个数据库
- 创建两个服务,每个服务处理一个数据库
为每个数据库创建单独的服务感觉更干净,例如扩展一个通用基类来处理关机、定时器等。它还允许我独立配置它们(现在不需要)。
另一方面,我不想开始走这条路,然后,当我习惯在“服务”中做这样的事情时,发现有 3 或 5 个服务的限制。
那么,例如,开销如何? 5 个正在运行的服务,而不是一个托管 5 个不同功能的服务?有什么想法吗?
【问题讨论】:
标签: android performance service overhead