java 定时任务多线程处理
@Configuration @EnableScheduling public class ScheduleConfig implements SchedulingConfigurer, AsyncConfigurer{ /** 异步处理 */ public void configureTasks(ScheduledTaskRegistrar taskRegistrar){ TaskScheduler taskScheduler = taskScheduler(); taskRegistrar.setTaskScheduler(taskScheduler); } /** 定时任务多线程处理 */ @Bean(destroyMethod = "shutdown") public ThreadPoolTaskScheduler taskScheduler(){ ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler(); scheduler.setPoolSize(20); scheduler.setThreadNamePrefix("task-"); scheduler.setAwaitTerminationSeconds(60); scheduler.setWaitForTasksToCompleteOnShutdown(true); return scheduler; } /** 异步处理 */ public Executor getAsyncExecutor(){ Executor executor = taskScheduler(); return executor; } /** 异步处理 异常 */ public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler(){ return new SimpleAsyncUncaughtExceptionHandler(); } }