- package com.momathink.common.kit;
- import java.util.Map;
- import java.util.concurrent.ConcurrentHashMap;
- import it.sauronsoftware.cron4j.Scheduler;
- /**
- * Cron4j 工具
- * @author dufuzhong
- * 2018-03-21 22:01:28
- */
- public class Cron4jKit {
- private static final Map<String, Scheduler> MAPCP
- = new ConcurrentHashMap<String, Scheduler>();
- public static void put(String name, String cron,
- Runnable task, boolean daemon) {
- stop(name);
- Scheduler scheduler = new Scheduler();
- scheduler.schedule(cron, task);
- scheduler.setDaemon(daemon);
- MAPCP.put(name, scheduler);
- scheduler.start();
- }
- public static Scheduler get(String name) {
- return MAPCP.get(name);
- }
- public static void start(String name) {
- Scheduler scheduler = get(name);
- if (scheduler != null) {
- scheduler.start();
- }
- }
- public static void start() {
- for (Entry<String, Scheduler> kv : MAPCP.entrySet()) {
- kv.getValue().start();
- }
- }
- public static void stop(String name) {
- Scheduler scheduler = get(name);
- if (scheduler != null) {
- scheduler.stop();
- }
- }
- public static void stop() {
- for (Entry<String, Scheduler> kv : MAPCP.entrySet()) {
- kv.getValue().stop();
- }
- }
- public static void main(String[] args) {
- System.out.println("Cron4jKit: 开始装载每分钟执行一次的任务");
- Cron4jKit.put("main"
- , "* * * * *"
- , new Runnable() {
- @Override
- public void run() {
- System.out
- .println("Cron4jKit: main 任务运行 一次");
- }
- }
- , false);
- System.out.println("Cron4jKit: 装载完毕等待异步执行");
- }
- }
jfinal定时任务(动态传参)
最新推荐文章于 2024-08-05 03:42:44 发布