Spring TaskExecutor
来源:互联网 发布:乌镇互联网大会 知乎 编辑:程序博客网 时间:2024/05/22 01:51
简单来说就是Spring给你优化了Java的线程池,方便你的使用.
简介:
Spring的TaskExecutor
接口等同于java.util.concurrent.Executor
接口。 实际上,它存在的主要原因是为了在使用线程池的时候,将对Java 5的依赖抽象出来。 这个接口只有一个方法execute(Runnable task)
,它根据线程池的语义和配置,来接受一个执行任务。
最初创建TaskExecutor
是为了在需要时给其他Spring组件提供一个线程池的抽象。 例如ApplicationEventMulticaster
组件、JMS的AbstractMessageListenerContainer
和对Quartz的整合都使用了TaskExecutor
抽象来提供线程池。 当然,如果你的bean需要线程池行为,你也可以使用这个抽象层。
常用的实现类有:
SimpleAsyncTaskExecutor
类(异步)这个实现不重用任何线程,或者说它每次调用都启动一个新线程。但是,它还是支持对并发总数设限,当超过线程并发总数限制时,阻塞新的调用,直到有位置被释放。如果你需要真正的池,请继续往下看。
SyncTaskExecutor
类(同步)这个实现不会异步执行。相反,每次调用都在发起调用的线程中执行。它的主要用处是在不需要多线程的时候,比如简单的test case。
阅读全文
0 0
- spring TaskExecutor
- Spring TaskExecutor
- Spring TaskExecutor的用法
- spring boot Async taskExecutor
- spring 集成线程池(TaskExecutor)
- TaskExecutor
- TaskExecutor
- 使用Spring的taskExecutor实现线程池
- spring taskExecutor redis redisMessageListenerContailner线程优化
- 使用Spring的TaskExecutor的线程池执行异步操作
- taskExecutor使用
- Spring taskExecutor运行后台线程在Tomcat停止时时主动退出的方法
- NC57 定时任务TaskExecutor 控制单个任务
- <?>getCurrentSession绑定的线程,需不需要taskExecutor
- SpringMVC整合TaskExecutor线程池的配置/使用
- SpringMVC整合TaskExecutor线程池的配置/使用
- springmvc整合TaskExecutor线程池的配置/使用
- SpringMVC整合TaskExecutor线程池的配置/使用
- Spring的事务管理
- 单点登录
- SAX解析
- JVM可生产的最大线程数 Thread 数量
- Codeforces 812B-Sagheer, the Hausmeister
- Spring TaskExecutor
- 第十五周:( LeetCode565) Array Nesting(c++)
- 开个公众号 大数据务虚杂谈 ;)
- leetcode-461(Hamming Distance)
- androd stdio 编写蓝牙通信程序
- 【转载】JPush Android 推送如何区分开发、生产环境
- 2017年第0届浙江工业大学之江学院程序设计竞赛决赛 Problem E: qwb和李主席 (折半枚举!!!!n堆数分成最接近的两堆!!
- 非常好用的正则表达式"\\s+"
- 斐波那契数列