RuoYI 框架 异步任务管理
核心目标代码
AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage()))
代码解读
1、异步任务管理类AsyncManager获取Bean对象
2、线程池配置类ThreadPoolConfig创建线程池Bean对象
3、异步工厂AsyncFactory创建可执行任务TimerTask
4、提交任务给线程池
以下的内容从JDK中粘贴翻译
// schedule:延时设定时间(initialDelay)后只执行一次任务。
public ScheduledFuture<?> schedule(Runnable command,long delay, TimeUnit unit);
// schedule:延时设定时间(initialDelay)后只执行一次任务。
public <V> ScheduledFuture<V> schedule(Callable<V> callable,long delay, TimeUnit unit);
//延时设定时间(initialDelay)后执行第一次任务,每隔时间间隔(period)再次执行任务。
public ScheduledFuture<?> scheduleAtFixedRate(Runnable command,long initialDelay,long period, TimeUnit unit);
//延时设定时间(initialDelay)后执行第一次任务,随后每次任务执行完后延迟设定时间(delay)再次执行任务。
public ScheduledFuture<?> scheduleWithFixedDelay(Runnable command,long initialDelay,long delay,TimeUnit unit);
5、获取线程池实例执行任务