spring给我们提供了非常简便的线程池管理的包装类ThreadPoolTaskExecutor,本地启动一个为异步任务创建线程池的方法:
创建线程的方式:
1
<
bean
id
="threadPoolTaskExecutor"
2 class ="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor" >
3 < property name ="corePoolSize" value ="5" />
4 < property name ="maxPoolSize" value ="10" />
5 < property name ="queueCapacity" value ="25" />
6 </ bean >
corePoolSize:默认开启线程数;maxPoolSize:最大线程数;queueCapacity:缓冲任务队列的长度;
2 class ="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor" >
3 < property name ="corePoolSize" value ="5" />
4 < property name ="maxPoolSize" value ="10" />
5 < property name ="queueCapacity" value ="25" />
6 </ bean >
创建线程的方式:
1
threadPoolTaskExecutor.execute(new Runnable() {
2 public void run() {
3 //异步任务
4 }
5 });
2 public void run() {
3 //异步任务
4 }
5 });