ScheduledExecutorService 每秒执行一次
时间: 2024-02-28 14:50:50 浏览: 32
ScheduledExecutorService 是 Java 中用于定时执行任务的接口。它可以在指定的时间间隔内重复执行任务,包括每秒执行一次。
要实现每秒执行一次的功能,可以使用 ScheduledExecutorService 的 scheduleAtFixedRate 方法。该方法可以按照指定的时间间隔重复执行任务,即使前一个任务还未完成。
下面是一个示例代码:
```java
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class Main {
public static void main(String[] args) {
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
Runnable task = new Runnable() {
public void run() {
// 执行任务的逻辑
System.out.println("任务执行");
}
};
executor.scheduleAtFixedRate(task, 0, 1, TimeUnit.SECONDS);
}
}
```
在上面的代码中,我们创建了一个 ScheduledExecutorService 对象,并使用 Executors 工具类的 newScheduledThreadPool 方法创建了一个线程池。然后,我们定义了一个 Runnable 对象作为要执行的任务,并将其传递给 scheduleAtFixedRate 方法。该方法的第一个参数是要执行的任务,第二个参数是初始延迟时间(0 表示立即执行),第三个参数是时间间隔,第四个参数是时间单位(这里使用秒)。
这样,任务就会每秒执行一次。