scheduleAtFixedRate 计数
时间: 2024-01-03 14:22:28 浏览: 143
java中timer的schedule和scheduleAtFixedRate方法区别详解
5星 · 资源好评率100%
scheduleAtFixedRate方法是Java中Timer类的一个方法,用于按固定的速率执行任务。它接受两个参数:一个TimerTask对象,表示要执行的任务,和一个long类型的参数,表示任务的初始延迟时间。该方法会以固定的速率重复执行任务,每次执行的时间间隔为参数中指定的时间。
下面是一个示例代码,演示了如何使用scheduleAtFixedRate方法进行计数:
```java
import java.util.Timer;
import java.util.TimerTask;
public class CountingTask extends TimerTask {
private int count = 0;
@Override
public void run() {
count++;
System.out.println("Count: " + count);
}
public static void main(String[] args) {
Timer timer = new Timer();
CountingTask countingTask = new CountingTask();
// 延迟1秒后开始执行任务,每隔2秒执行一次
timer.scheduleAtFixedRate(countingTask, 1000, 2000);
}
}
```
上述代码中,定义了一个CountingTask类,继承自TimerTask类,并重写了run方法。在run方法中,每次执行时,计数器count会自增,并输出当前的计数值。
在main方法中,创建了一个Timer对象和一个CountingTask对象。然后使用scheduleAtFixedRate方法,设置初始延迟时间为1秒,每隔2秒执行一次CountingTask任务。
运行上述代码,你将会看到每隔2秒输出一次计数值,示例中的输出结果如下:
```
Count: 1
Count: 2
Count: 3
...
```
阅读全文