欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ScheduledExecutorService

程序员文章站 2022-05-14 22:18:18
...
ScheduledFuture<?> java.util.concurrent.ScheduledExecutorService.schedule(Runnable command, long delay, TimeUnit unit)

系统启动后,延迟{delay}{unit}时间执行{command},仅执行一次,非周期执行。



ScheduledFuture<?> java.util.concurrent.ScheduledExecutorService.scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)
系统启动后,延迟{delay}{unit}时间执行{command},之后每隔{period}{unit}便执行一次{command},周期执行。


情景一:{command}执行时间小于等于{period}{unit}时间,严格按照间隔时间,每隔{period}{unit}执行一次{command}。

情景二:{command}执行时间大于{period}{unit}时间,等待上一次{command}执行完,立即执行下一次{command}。



ScheduledFuture<?> java.util.concurrent.ScheduledExecutorService.scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)
系统启动后,延迟{delay}{unit}时间执行{command},在上一次{command}结束后,等待{period}{unit}时间执行下一次{command},周期执行。