Java 服务和活动内部启动计时器时的差异
我想有一个周期性的任务,应该每30秒运行一次。因此,我使用的是Java 服务和活动内部启动计时器时的差异,java,android,service,intentservice,threadpoolexecutor,Java,Android,Service,Intentservice,Threadpoolexecutor,我想有一个周期性的任务,应该每30秒运行一次。因此,我使用的是ScheduledThreadPoolExecutor或定时器 ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1); executor.scheduleWithFixedDelay(new MyTask(), 0, 30000, TimeUnit.MILLISECONDS); class MyTask implement
ScheduledThreadPoolExecutor
或定时器
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1);
executor.scheduleWithFixedDelay(new MyTask(), 0, 30000, TimeUnit.MILLISECONDS);
class MyTask implements Runnable {
@Override
public void run() {
}
}
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
// do something here
}
}, 0, 30000);
这是计时器
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1);
executor.scheduleWithFixedDelay(new MyTask(), 0, 30000, TimeUnit.MILLISECONDS);
class MyTask implements Runnable {
@Override
public void run() {
}
}
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
// do something here
}
}, 0, 30000);
我的问题是:如果我在Service/IntentService内部或在一个活动内部启动上述代码,是否有任何区别。这些操作将是相同的,或者启动内部服务会更好。如果您想在应用程序处于后台的情况下运行此任务,那么您应该使用
服务
,或者如果您只想在应用程序位于前端的情况下运行,那么您可以在活动中使用它
可能重复的