package com.gkhy.exam.framework.manager; import cn.hutool.extra.spring.SpringUtil; import com.gkhy.exam.common.utils.Threads; import java.util.TimerTask; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; /** * 异步任务管理器 */ public class AsyncManager { /** * 操作延迟10ms */ private final int OPERATE_DELAY_TIME=10; /** * 异步操作任务调度线程池 */ private ScheduledExecutorService executorService= SpringUtil.getBean("scheduledExecutorService"); /** * 单例模式 */ private AsyncManager(){} private static AsyncManager me=new AsyncManager(); public static AsyncManager me(){ return me; } public void execute(TimerTask task){ executorService.schedule(task,OPERATE_DELAY_TIME, TimeUnit.MILLISECONDS); } public void shutdown(){ Threads.shutdownAndAwaitTermination(executorService); } }