Spring TaskExecutor的用法

来源:互联网 发布:淘宝网店代销好吗 编辑:程序博客网 时间:2024/05/21 09:19

bean的写法

 <bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">    <!-- 核心线程数,默认为1 -->    <property name="corePoolSize" value="10" />    <!-- 最大线程数,默认为Integer.MAX_VALUE -->    <property name="maxPoolSize" value="50" />    <!-- 队列最大长度,一般需要设置值>=notifyScheduledMainExecutor.maxnum;默认为Integer.MAX_VALUE -->      <property name="queueCapacity" value="1000" />    <!-- 线程池维护线程所允许的空闲时间,默认为60s -->    <property name="keepAliveSeconds" value="300"/>    <!-- 线程池对拒绝任务的(无线程可用)的处理策略 -->    <property name="rejectedExecutionHandler">        <bean class="java.util.concurrent.ThreadPoolExecutor$CallerRunsPolicy"/>    </property> </bean>

测试用例:

 @Rollback(false) @Test public void testThread(){     //业务逻辑1     taskExecutor.execute(new Runnable(){         @Override         public void run(){             //业务逻辑2         }     });     //业务逻辑3 }
0 0
原创粉丝点击