当前位置: 首页> 科技> 互联网 > 海宁网站建设_外发加工会计分录_网络推广外包哪个公司做的比较好_网站推广的10种方法

海宁网站建设_外发加工会计分录_网络推广外包哪个公司做的比较好_网站推广的10种方法

时间:2025/9/8 11:31:55来源:https://blog.csdn.net/guoqi_666/article/details/144936081 浏览次数:2次
海宁网站建设_外发加工会计分录_网络推广外包哪个公司做的比较好_网站推广的10种方法

   ScheduledExecutorService 是 Java 并发工具包 (java.util.concurrent) 中的一个接口,用于在指定的延迟后执行任务,或者以固定的时间间隔周期性执行任务。它是 ExecutorService 的子接口,提供了更强大的调度功能。

ScheduledExecutorService 提供了以下主要方法:

1.核心方法:scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)

  • 方法解释:是以上一个任务开始的时间计时,比如period为5,那5秒后,检测上一个任务是否执行完毕,如果上一个任务执行完毕,则当前任务立即执行,如果上一个任务没有执行完毕,则需要等上一个任务执行完毕后立即执行,如果你的任务执行时间超过5秒,那么任务时间间隔参数将无效,任务会不停地循环执行,由此可得出该方法不能严格保证任务按一定时间间隔执行

  • 参数:

    参数名称

    作用

    command

    要执行的任务(Runnable

    initialDelay

    初始延迟时间

    delay

    任务执行间隔

    unit

    时间单位。

public static void main(String[] args) {ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);// 初始延迟 1 秒,之后每 2 秒执行一次任务scheduler.scheduleAtFixedRate(() -> {System.out.println("固定速率任务执行时间: " + System.currentTimeMillis());}, 1, 2, TimeUnit.SECONDS);// 让主线程等待一段时间,观察任务执行try {Thread.sleep(10000); // 等待 10 秒} catch (InterruptedException e) {e.printStackTrace();}// 关闭调度器scheduler.shutdown();}

2.核心方法:scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)

  • 以上一次任务执行结束时间为准,加上任务时间间隔作为下一次任务开始时间,由此可以得出,任务可以严格按照时间间隔执行

  • 参数:

    参数名称

    作用

    command

    要执行的任务(Runnable

    initialDelay

    初始延迟时间

    delay

    任务执行间隔

    unit

    时间单位。

public static void main(String[] args) {ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);// 初始延迟 1 秒,之后每次任务结束后延迟 2 秒再执行下一次任务scheduler.scheduleWithFixedDelay(() -> {System.out.println("固定延迟任务执行时间: " + System.currentTimeMillis());try {Thread.sleep(1000); // 模拟任务执行时间} catch (InterruptedException e) {e.printStackTrace();}}, 1, 2, TimeUnit.SECONDS);// 让主线程等待一段时间,观察任务执行try {Thread.sleep(10000); // 等待 10 秒} catch (InterruptedException e) {e.printStackTrace();}// 关闭调度器scheduler.shutdown();}

 

3.核心方法:schedule(Runnable command, long delay, TimeUnit unit)

  • 在指定的延迟后执行一次任务。

  • 参数:

参数名称

作用

command

要执行的任务(Runnable

delay

延迟时间

unit

时间单位。

 public static void main(String[] args) {// 创建一个调度线程池ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);// 延迟 3 秒后执行任务scheduler.schedule(() -> {System.out.println("任务执行时间: " + System.currentTimeMillis());}, 3, TimeUnit.SECONDS);// 关闭调度器scheduler.shutdown();

 

关键字:海宁网站建设_外发加工会计分录_网络推广外包哪个公司做的比较好_网站推广的10种方法

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: