自己在程序中手动New很容易造成线程滥用,创建线程也是比较消耗资源的操作,所以建议如果有此需求,将线程池统一交给Spring框架进行管理。
如下:
<!--Spring 集成线程池,不允许自己开启线程--> <bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor"> <!-- 线程池维护线程的最少数量 --> <property name="corePoolSize" value="5"/> <!-- 线程池维护线程所允许的空闲时间 --> <property name="keepAliveSeconds" value="500"/> <!-- 线程池维护线程的最大数量 --> <property name="maxPoolSize" value="100"/> <!-- 线程池所使用的缓冲队列 --> <property name="queueCapacity" value="20"/> </bean>
相关注释参见绿色文字。
原文:http://www.cnblogs.com/LiuChunfu/p/6443389.html