java中Scheduled
时间: 2023-07-08 09:06:45 浏览: 85
Scheduled 是 Java 中一个用于定时执行任务的框架。它可以在指定的时间点或者时间间隔内周期性地执行任务。
Java 中的 Scheduled 主要由两个类来实现:Timer 和 ScheduledExecutorService。其中,Timer 是一个基于线程的实现,而 ScheduledExecutorService 是基于线程池的实现。
使用 Scheduled 可以非常方便地实现一些定时任务,比如定时发送邮件、定时备份数据等。同时,Scheduled 也支持设置任务的优先级、取消任务等操作,非常灵活。
下面是一个使用 ScheduledExecutorService 定时执行任务的示例代码:
```
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
scheduler.scheduleAtFixedRate(new Runnable() {
public void run() {
// 执行任务
}
}, initialDelay, period, TimeUnit.SECONDS);
```
其中,scheduleAtFixedRate 方法用于周期性地执行任务,它接受四个参数:要执行的任务、初始延迟时间、执行间隔时间和时间单位。在上面的代码中,我们创建了一个 ScheduledExecutorService,然后调用 scheduleAtFixedRate 方法,每隔 period 秒就会执行一次任务。这个方法返回一个 ScheduledFuture 对象,我们可以使用它来控制任务的执行。
阅读全文