Android应用程序(Java)需要定期更新同一数据库记录。它可以每一秒或每一分钟都做。仅就电池寿命而言,每秒钟v/s每分钟一次有什么显著的区别吗(比如将电池寿命缩短到一半)?
由于只涉及CPU和内存,我认为这没什么区别,但我不确定。不管怎样,正在运行的应用程序和其他系统进程仍在使用CPU和内存。
每秒更新一个简单的应用程序;每分钟缓存和更新(或等待特定条件)会使代码更加复杂和容易出错。

最佳答案

我同意你的答案——如果你不需要每隔一秒钟做一件事,而且可以做得更少,那么最好的做法就是尽可能地减少频率,因为经常这样做会消耗更多的能量。
然而,为了解决您问题的“重要”部分,特别是与其他设备操作相关的问题,请考虑以下基于HTC Dream(G1)和Nexus One设备测试的报价,来自:
Aaron Carroll和Gernot Heiser,“在智能手机的功耗分析,”在2010届USENIX会议上提交的USENIX年技术会议,波士顿,MA,2010。http://www.nicta.com.au/pub?doc=3587
RAM、音频和ASH子系统始终表现出最低的功耗。虽然我们的微基准显示SD卡的峰值功率可以是相当大的(50毫瓦),但实际上,利用率足够低,使得平均消耗的功率可以忽略不计。甚至视频播放,其中一个更密集的移动设备使用,显示SD功率低于1%的总功率。RAM具有类似的特性;微基准测试表明RAM功率在某些工作负载中可以超过CPU功率,但是在实际情况下,CPU功率超过两个或更多的RAM。音频显示了很大的静态功耗在28 - 34毫瓦的范围内。总体而言,RAM、音频和SD对设备的功耗几乎没有影响,因此为能量优化提供了很少的潜力。
在CPU不忙的时候让它保持忙碌,这可能是每秒不断地向数据库写入数据,而不是每分钟写入数据所带来的最大能量影响。相对而言,假设正常使用,闪存在隔离中消耗相对较少的能量。
如果您对其他推荐和讨论感兴趣,请参见:
https://stackoverflow.com/a/13004377/937715

10-08 04:31