Spring Boot 定时任务单线程和多线程


	Spring Boot 定时任务单线程和多线程
[编程语言教程]

1、创建定时任务:

@Component
public class AutoNotifyController {


    /**
     * 获取RedisUtils注入的bean
     *
     * @return
     */
    private ThreadUtil getThreadUtil() {
        ThreadUtil threadUtil = SpringContextUtil.getBean("threadUtil");
        return threadUtil;
    }


    /**
     * @描述: 推送启动充电结果的自动获取和处理分发方法
     * @输入值: void
     * @返回值: void
     */
    @Scheduled(cron = "*/5 * * * * ?")
    public void AutoNotifyStartChargeResult() {
        getThreadUtil().AutoNotifyStartChargeResult();
    }


    /**
     * @描述: 推送充电状态的自动获取和处理分发方法
     * @输入值: void
     * @返回值: void
     */
    @Scheduled(cron = "*/50 * * * * ?")
    public void AutoNotifyChargeStatus() {
        getThreadUtil().AutoNotifyChargeStatus();
    }


    /**
     * @描述: 推送停止充电结果的自动获取和处理分发方法
     * @输入值: void
     * @返回值: void
     */
    @Scheduled(cron = "*/5 * * * * ?")
    public void AutoNotifyStopChargeResult() {
        getThreadUtil().AutoNotifyStopChargeResult();
    }


    /**
     * @描述: 推送订单信息的自动获取和处理分发方法
     * @输入值: void
     * @返回值: void
     */
    @Scheduled(cron = "*/5 * * * * ?")
    public void AutoNotifyOrderInfo() {
        getThreadUtil().AutoNotifyOrderInfo();
    }


    /**
     * @描述: 公共信息部分的设备状态变化推送接口的自动获取和处理分发方法
     * @输入值: void
     * @返回值: void
     */
    @Scheduled(fixedRate = 200)
    public void checkGunStatus() {
        getThreadUtil().checkGunStatus();
    }


    /**
     * @描述: 对于Redis中的活跃订单增加和删除的轮询执行方法
     */
    @Scheduled(cron = "*/5 * * * * ?")
    public void ActiveOrderAddAndDelete() {
        getThreadUtil().ActiveOrderAddAndDelete();
    }


    /**
     * @描述: 对于Redis中的结束订单订单增加和删除的轮询执行方法
     */
    @Scheduled(cron = "*/5 * * * * ?")
    public void EndOrderAddAndDelete() {
        getThreadUtil().EndOrderAddAndDelete();
    }


}
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Spring Boot 定时任务单线程和多线程