定时调度任务ScheduledExecutorService

详解:

public ScheduledFuture scheduleAtFixedRate(Runnable command,

                                              long initialDelay,

                                              long period,

                                              TimeUnit unit);

注意:period是按任务开始的时间计算的:

1 如果任务执行耗时5S,间隔3S,则任务执行完之后立即开启下一次执行

2 如果任务执行耗时5S,间隔10S,则第一个任务结束后再过5S执行第二个任务,加上第一个任务执行时间共10S

public ScheduledFuture scheduleWithFixedDelay(Runnable command,

                                                long initialDelay,

                                                long delay,

                                                TimeUnit unit);

注意:period是按任务结束的时间计算的:

1 如果任务执行耗时5S,间隔3S,则任务执行完之后再过3S立即开启下一次执行

2 如果任务执行耗时5S,间隔10S,则第一个任务结束后再过10S执行第二个任务

你可能感兴趣的:(定时调度任务ScheduledExecutorService)