当前位置: 首页 > news >正文

自己做网站视频教学facebook海外推广

自己做网站视频教学,facebook海外推广,上海住房与建设委员会网站,企业网站模板 html目录 定时任务管理器定时任务的任务接口定时任务和定时任务结果的缓存对象定时任务使用姿势 定时任务管理器 负责启动一个定时任务、停止一个定时任务、更新一个定时任务 /*** 定时任务管理器* 1、创建并启动一个定时任务* 2、停止一个定时任务* 3、更新一个定时任务*/ publi…

目录

  • 定时任务管理器
  • 定时任务的任务接口
  • 定时任务和定时任务结果的缓存对象
  • 定时任务
  • 使用姿势

定时任务管理器

  • 负责启动一个定时任务、停止一个定时任务、更新一个定时任务
/*** 定时任务管理器* 1、创建并启动一个定时任务* 2、停止一个定时任务* 3、更新一个定时任务*/
public class ScheduleManager {private final Logger logger = LoggerFactory.getLogger(ScheduleManager.class);@Autowiredprivate ThreadPoolTaskScheduler taskScheduler;/*** 内部正在执行的定时任务缓存*/private final Map<String, ScheduleTaskHolder> cache = new ConcurrentHashMap<>();public ScheduleManager(ThreadPoolTaskScheduler taskScheduler) {this.taskScheduler = taskScheduler;}/*** 启动一个定时任务** @param scheduleTask 定时任务实现类* @param cron         定时任务的cron表达式* @return key*/public String startTask(ScheduleTask scheduleTask, String cron) {ScheduledFuture<?> scheduledFuture = taskScheduler.schedule(scheduleTask, new CronTrigger(cron));String key = UUID.randomUUID().toString();ScheduleTaskHolder holder = new ScheduleTaskHolder(scheduleTask, scheduledFuture);cache.put(key, holder);logger.info("{} 定时任务启动成功!唯一标识为:{}", scheduleTask.getName(), key);return key;}/*** 停止一个定时任务** @param key 定时任务的唯一标识*/public void stopTask(String key) {if (StringUtils.isBlank(key)) {return;}ScheduleTaskHolder holder = cache.get(key);if (Objects.isNull(holder)) {return;}ScheduledFuture scheduledFuture = holder.getScheduledFuture();boolean cancel = scheduledFuture.cancel(true);if (cancel) {logger.info("{} 定时任务停止成功!唯一标识为:{}", holder.getScheduleTask().getName(), key);} else {logger.error("{} 定时任务停止失败!唯一标识为:{}", holder.getScheduleTask().getName(), key);}}/*** 更新一个定时任务的执行时间** @param key  定时任务的唯一标识* @param cron 新的cron表达式* @return key*/public String changeTask(String key, String cron) {if (StringUtils.isAnyBlank(key, cron)) {throw new RuntimeException("定时任务的唯一标识以及新的执行表达式不能为空");}ScheduleTaskHolder holder = cache.get(key);if (Objects.isNull(holder)) {throw new RuntimeException(key + "唯一标识不存在");}stopTask(key);return startTask(holder.getScheduleTask(), cron);}}

定时任务的任务接口

  • 定时任务的运行逻辑在重写的 run 方法中实现
/*** 定时任务的任务接口*/
public interface ScheduleTask extends Runnable {/*** 获取定时任务的名称** @return*/String getName();}

定时任务和定时任务结果的缓存对象

  • 负责缓存定时任务和控制该定时任务
/*** 定时任务和定时任务结果的缓存对象*/
public class ScheduleTaskHolder implements Serializable {/*** 执行任务实体*/private ScheduleTask scheduleTask;/*** 执行任务的结果实体*/private ScheduledFuture scheduledFuture;public ScheduleTaskHolder() {}public ScheduleTaskHolder(ScheduleTask scheduleTask, ScheduledFuture scheduledFuture) {this.scheduleTask = scheduleTask;this.scheduledFuture = scheduledFuture;}public ScheduleTask getScheduleTask() {return scheduleTask;}public void setScheduleTask(ScheduleTask scheduleTask) {this.scheduleTask = scheduleTask;}public ScheduledFuture getScheduledFuture() {return scheduledFuture;}public void setScheduledFuture(ScheduledFuture scheduledFuture) {this.scheduledFuture = scheduledFuture;}
}

定时任务

  • 具体实现的定时任务
/*** 定时任务*/
public class ThreadPoolWarnTask implements ScheduleTask {@Overridepublic String getName() {return "threadPoolWarnTask";}@Overridepublic void run() {}
}

使用姿势

  • 引入 ScheduleManager 对象
  • 开启定时任务、关闭定时任务、更新定时任务
// 传入一个定时任务和CRON表达式开启定时任务,返回该定时任务的唯一标识
String taskKey = scheduleManager.startTask(threadPoolWarnTask, CRON);
// 停止定时任务
scheduleManager.stopTask(taskKey);
// 更新定时任务的CRON
scheduleManager.changeTask(taskKey, newCRON);
http://www.ds6.com.cn/news/54724.html

相关文章:

  • 做招聘网站需要哪些手续网站怎么做的
  • 北京高端网站制作电脑系统优化软件
  • 分享惠网站怎么做软文网站发布平台
  • 甘肃省城乡住房建设厅网站首页保定seo排名外包
  • 凯里做网站个人怎么做免费百度推广
  • 石家庄网站外包杭州seo运营
  • 武汉网站建设方案怎么做百度推广平台
  • 全国b2c网站建设电商网络推广
  • 如何评价一个网站设计的好坏百度一下百度首页登录
  • 如何向百度提交站点收录信息长沙建站优化
  • 做网站用的主机百度购物平台客服电话
  • 望都网站建设郑州全域静态管理
  • 上海阿里巴巴做网站百度搜索引擎推广步骤
  • 依宝诺手表官方网站百度客服在线咨询
  • crm系统 网站建设seo系统培训哪家好
  • 做网站建设分哪些类型抖音seo优化排名
  • 公司网站用什么程序湖北短视频搜索seo
  • 凡科建站网址2023年第三波新冠9月
  • 网站建设存在的问题及解决办法怎么开发网站
  • IP怎么屏蔽网站域名网络优化大师下载
  • 优秀网站设计作品分析广州官方新闻
  • 网站必须做ipv6视频号直播推广二维码
  • php做网站优势友链通
  • qq电脑版网页登录seo研究协会网是干什么的
  • 网站开发制作案例免费放单平台无需垫付
  • 武汉黄页网资源优化排名网站
  • 潍坊市建设一体化平台网站近三天发生的大事
  • 服装网站建设论文范文免费推广引流怎么做
  • 做业帮网站百度免费推广方法
  • wordpress文章转bbpress商丘seo教程