当前位置:   article > 正文

【ScheduledExecutorService类解析以及使用样例】_httpmetadataprovider 使用scheduledexecutorservice

httpmetadataprovider 使用scheduledexecutorservice

ScheduledExecutorService是Java标准库中提供的一个类,可以用于在Java程序中实现定时任务。相较于Timer类,ScheduledExecutorService提供了更加灵活和强大的功能,并且在处理异常、取消任务等方面更加稳健。

ScheduledExecutorService类通过ScheduledThreadPoolExecutor类实现,可以实现单线程或者多线程的定时任务。

下面是一个使用ScheduledExecutorService类实现定时任务的样例:

import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;

public class MyScheduler {

    public static void main(String[] args) {
        ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();

        // 延迟1秒后执行任务
        executor.schedule(new Runnable() {
            public void run() {
                System.out.println("任务执行了");
            }
        }, 1, TimeUnit.SECONDS);

        // 延迟2秒后执行任务,然后每隔3秒执行一次
        executor.scheduleAtFixedRate(new Runnable() {
            public void run() {
                System.out.println("定时任务执行了");
            }
        }, 2, 3, TimeUnit.SECONDS);

        // 等待一定时间后关闭ScheduledExecutorService
        try {
            Thread.sleep(10000);
            executor.shutdown();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

这个样例中,首先创建了一个ScheduledExecutorService对象,然后通过调用schedule()和scheduleAtFixedRate()方法来安排定时任务。其中,schedule()方法是延迟指定时间后执行一次任务,而scheduleAtFixedRate()方法则是延迟指定时间后开始执行任务,然后每隔指定时间再次执行任务。

在样例中,定时任务的执行是通过匿名内部类的方式实现的。其中,run()方法是定时任务的执行体,可以在其中编写任意需要执行的代码。在最后,使用Thread.sleep()方法等待一定时间后,通过调用ScheduledExecutorService的shutdown()方法来关闭定时任务。

需要注意的是,使用ScheduledExecutorService时需要手动关闭定时任务。可以通过调用shutdown()方法来关闭定时任务,也可以通过调用shutdownNow()方法强制关闭定时任务。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/83688
推荐阅读
  

闽ICP备14008679号