使用警报管理器和ScheduledExecutorService安排相同任务之间的区别是什么

时间:2015-02-01 12:06:06

标签: android alarmmanager scheduledexecutorservice

您好我在互联网上阅读我们可以使用警报管理器和ScheduledExecutorService安排我们想要以一定间隔的间隔运行的任何事情。

我想知道它们与

时使用的内容有什么区别

提前致谢。

1 个答案:

答案 0 :(得分:12)

ScheduledExecutorService是您的流程中 的内容。如果您的进程因其他原因已经存在,例如它正在提供前台UI,并且您希望使用ScheduledExecutorService进行定期工作,那很好。但是,一旦您的应用移到后台,其过程可能会随时消失,随身携带ScheduledExecutorService,您将无法再定期获得控制权。

AlarmManager之外的过程。如果您正在寻找与Windows相同的Windows“计划任务”或OS X / Linux cron 作业,那就是AlarmManager(或JobScheduler在Android 5.0+上)是为了。这些是针对您需要在后台定期运行应用程序代码但很高兴允许您的流程可能在这些期间之间终止的情况。