刚接触了ScheduledExecutorService,
大概理解就是把她用来作为定时器来使用。
而这里面的最主要的肯定是
scheduleWithFixedDelay(command, initialDelay, period, unit)和
scheduleAtFixedRate(command, initialDelay, period, unit)方法。
command:这个定时器每次要执行的命令
initialDelay:定时器开始之前要等待的时间
period:定时器的时间间隔,这个应该是最主要的参数吧
unit:period参数的单位,可以是秒,毫秒。。。
通过查资料知道了这两个的区别
简单的说scheduleWithFixedDelay中的period参数,
设置的是前一次执行command结束到后一次command的开始中间的间隔时间。
而scheduleAtFixedRate中得period参数,
设置的是前一次执行command开始到后一次command的开始中间的间隔时间。
还有一条不得不记录下来的是,period设置为0的时候程序会抛出异常。
最少都要设置为1
本文介绍了ScheduledExecutorService的主要用途及核心方法scheduleAtFixedRate与scheduleWithFixedDelay的区别。前者从首次任务启动开始计时,后者则从上一次任务完成时开始计时。
3351

被折叠的 条评论
为什么被折叠?



