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(); } }