阅读量:0
在Java中,可以使用ScheduledExecutorService接口的scheduleAtFixedRate方法来创建一个定时任务,该任务会以固定的时间间隔重复执行。
下面是一个示例代码,演示了如何使用scheduleAtFixedRate方法:
import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; public class ScheduledTaskExample { public static void main(String[] args) { ScheduledExecutorService executor = Executors.newScheduledThreadPool(1); // 创建一个定时任务,每隔1秒执行一次 executor.scheduleAtFixedRate(() -> { System.out.println("Task is running..."); }, 0, 1, TimeUnit.SECONDS); // 等待一段时间后关闭Executor try { Thread.sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } executor.shutdown(); } }
在上面的示例中,我们创建了一个ScheduledExecutorService对象,并使用scheduleAtFixedRate方法创建了一个定时任务,该任务每隔1秒执行一次。在任务执行期间,控制台会输出"Task is running…"。最后,我们等待5秒后关闭了Executor。
需要注意的是,scheduleAtFixedRate方法的第一个参数是一个Runnable对象,表示要执行的任务;第二个参数是初始延迟时间;第三个参数是重复执行的时间间隔;第四个参数是时间单位。