定时调度任务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执行第二个任务

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容