可以使用Java中的Timer和TimerTask类来实现定时任务的调度。

下面是一个示例代码,将在每天的早上9点到下午4点之间每隔2小时执行一次任务,共执行5次:

import java.util.Timer;
import java.util.TimerTask;

public class ScheduledTask {

    public static void main(String[] args) {
        Timer timer = new Timer();
        int delay = 0; // 延迟0秒开始执行任务
        int period = 2 * 60 * 60 * 1000; // 每隔2小时执行一次任务
        int count = 5; // 执行5次任务

        // 定义一个定时任务
        TimerTask task = new TimerTask() {
            int i = 1;

            @Override
            public void run() {
                System.out.println("执行第" + i + "次任务");
                i++;
                if (i > count) {
                    timer.cancel(); // 执行完5次任务后取消定时任务
                }
            }
        };

        // 设置定时任务的开始时间和执行周期
        timer.scheduleAtFixedRate(task, delay, period);
    }

}

需要注意的是,定时任务的执行时间是相对于程序启动时间的,因此如果程序在9点之后启动,则第一次任务可能会被延迟执行。如果需要避免这种情况,可以在程序启动时先计算出下一次任务的执行时间,并将其作为定时任务的开始时间。

Java早上9点到下午4点执行5次的定时任务

原文地址: https://www.cveoy.top/t/topic/bzH8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录