需要注意一下 ThreadPoolTaskExecutor  和 Executor  区别

@Configuration
public class ExecutorConfig {
/** Set the ThreadPoolExecutor's core pool size. */
private int corePoolSize = 10;
/** Set the ThreadPoolExecutor's maximum pool size. */
private int maxPoolSize = 100;
/** Set the capacity for the ThreadPoolExecutor's BlockingQueue. */
private int queueCapacity = 100; @Bean
public ThreadPoolTaskExecutor callerRunsExecutorService() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(corePoolSize);
executor.setMaxPoolSize(maxPoolSize);
executor.setQueueCapacity(queueCapacity);
executor.setThreadNamePrefix("RunsExecutor-"); // rejection-policy:当pool已经达到max size的时候,如何处理新任务
// CALLER_RUNS:不在新线程中执行任务,而是有调用者所在的线程来执行
executor.setRejectedExecutionHandler(new ThreadPoolExecutor.AbortPolicy());
executor.setKeepAliveSeconds(60);
executor.initialize();
return executor;
} @Bean("commonTaskExecutor")
public Executor commonRunsAsync() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(corePoolSize);
executor.setMaxPoolSize(maxPoolSize);
executor.setQueueCapacity(queueCapacity);
executor.setThreadNamePrefix("common---"); // rejection-policy:当pool已经达到max size的时候,如何处理新任务
// CALLER_RUNS:不在新线程中执行任务,而是有调用者所在的线程来执行
executor.setRejectedExecutionHandler(new ThreadPoolExecutor.AbortPolicy());
executor.setKeepAliveSeconds(60);
executor.initialize();
return executor;
}
}

最新文章

  1. Spark中Lambda表达式的变量作用域
  2. 【转】Js获取当前日期时间及格式化操作
  3. C语言PIC18 serial bootloader和C#语言bootloader PC端串口通信程序
  4. 决策树 -- ID3算法小结
  5. VS2010中“工具>选项中的VC++目录编辑功能已被否决”解决方法
  6. jQuery部分源码帮助理解
  7. SQL SERVER将某一列字段中的某个值替换为其他的值 分类: MSSQL 2014-11-05 13:11 67人阅读 评论(0) 收藏
  8. [Protractor] Test Simple Binding With Protractor
  9. IOS 推送原理
  10. uestc 250 数位dp(水)
  11. TPM 2.0 近况及模拟器开发
  12. Servlet过滤器——异常捕获过滤器
  13. 原生js实现 常见的jquery的功能
  14. Redis命令与配置
  15. Food Delivery ZOJ - 3469(区间dp)
  16. Gitlab仓库搭建及在linux/windows中免密使用gitlab(二)--技术流ken
  17. 解决phpmyadmin 遇见的问题
  18. python manage.py runserver指定端口和ip
  19. Maven内存修改
  20. ArrayBlcokingQueue,LinkedBlockingQueue与Disruptor三种队列对比与分析

热门文章

  1. 用Keras搭建神经网络 简单模版(四)—— RNN Classifier 循环神经网络(手写数字图片识别)
  2. 按下F2编辑dxDBTreeView的节点
  3. Apache设置静态文件的失效时间
  4. Spring Security(3):配置与自动配置的介绍及源码分析
  5. 启动页面、icon图标设置
  6. GitHub快速搭建个人博客
  7. django 之(五) --- RESTApi总结
  8. Docker部署WordPress网站
  9. 输出重定向之python2和python3的区别
  10. IO多路复用技术详解