【发布时间】:2011-10-16 04:46:12
【问题描述】:
由于我无法在每天 0:00 运行服务,我决定每 50 秒运行一次(通过 AlarmManager)。我读到每 1 秒运行一次服务会耗尽电池。我以 1 秒的刷新率和 50 秒的刷新率尝试了我的程序。为此,我使用了各种应用程序来测量内存使用情况和 cpu 使用情况。结果如下:
内存使用情况:
-
Android 助推器
1 秒:5.1 - 7.5 MB
50 秒:5.5-7.2MB
-
内存使用/内存管理器
1 秒:24.5MB
50 秒:23MB
-
使用时间表
1 秒:24MB
50 秒:22.7 MB
-
看门狗任务管理器
1 秒:14.6MB
50 秒:12-14MB
-
Android 助手:
1 秒:4MB
50 秒:7MB
CPU 使用率:
-
使用时间表
1 秒:2%
50 秒:0%
-
看门狗任务管理器
1 秒:1.3%-1.9%
50 秒:0.1%
-
Android 助手:
1 秒:2%-3%
50 秒:0.4%-2%
总而言之,我们可以说内存使用量没有改变,但 CPU 使用量发生了惊人的变化。由于所有使用的应用程序显示不同的数据,我无法确定我的应用程序使用了多少内存/cpu,但这个小调查告诉我,每 1 秒运行一次服务对 cpu 来说真的很痛苦。或者不是吗?您对此有何看法?
【问题讨论】:
-
我会说这完全取决于您的服务是做什么的。
-
我同意。我的服务会刷新小部件上的数据和图像。