我想仅从前台服务运行3次重复任务。
我尝试使用ScheduledExecutorService
ScheduledExecutorService scheduler = Executors
.newScheduledThreadPool(1);
counter = 0;
scheduler.scheduleWithFixedDelay(new Runnable() {
public void run() {
if (counter<3) {
counter++;
System.out.println("Do something useful");
}
else {
scheduler.shutdownNow()
}
}
}
}, 2, 2, TimeUnit.SECONDS);
但我不确定这是否是正确的选择。 这个重复的任务只会运行3次,之后就会停止。 AlarmManager是另一种选择,但听起来像是对这个短期任务的过度杀伤。
任何建议都会有所帮助!