1、在xml中配置线程池

<!-- 配置线程池 -->
<bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
  <!-- 核心线程数 -->
  <property name="corePoolSize" value="4" />
  <!-- 最大线程数 -->
  <property name="maxPoolSize" value="4" />
  <!-- 队列最大长度 -->
  <property name="queueCapacity" value="1000" />
  <!-- 线程池维护线程所允许的空闲时间,默认为60s -->
  <property name="keepAliveSeconds" value="60" />
</bean>
<!-- 注解式 -->
<task:annotation-driven />

2,定义任务类,并循环执行

package com.mediaforce.crawl.quarz;

import java.text.SimpleDateFormat;
import java.util.Date;

import javax.annotation.Resource;

import org.ansj.splitWord.analysis.ToAnalysis;
import org.springframework.core.task.TaskExecutor;
import org.springframework.stereotype.Component;

@Component
public class SolrWarning {

    @Resource(name = "taskExecutor")
    private TaskExecutor taskExecutor;

    public void warning() {
        try {
            for (int i = 0; i < 10; i++) {
                MyTask task = new MyTask(i);
                taskExecutor.execute(task);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

class MyTask implements Runnable {
    private int taskNum;

    public MyTask(int num) {
        this.taskNum = num;
    }

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    final String s = "风萧萧兮易水寒,壮士一去兮不复还";

    public void run() {
        System.out.println(sdf.format(new Date())
                    + Thread.currentThread().getName() + "senti:"
                    + ToAnalysis.parse(s));
        System.out.println("num:" + taskNum);
    }
}

3、关于线程池的详解,请参考

http://www.cnblogs.com/dolphin0520/p/3932921.html

spirng线程池的配置与使用的更多相关文章

  1. 记录ThreadPoolTaskExecutor线程池的在项目中的实际应用,讲解一下线程池的配置和参数理解。

    前言:最近项目中与融360项目中接口对接,有反馈接口(也就是我们接收到请求,需要立即响应,并且还要有一个接口推送给他们其他计算结果),推送过程耗时.或者说两个接口不能是同时返回,有先后顺序. 这时我想 ...

  2. Spring线程池ThreadPoolTaskExecutor配置及详情

    Spring线程池ThreadPoolTaskExecutor配置及详情 1. ThreadPoolTaskExecutor配置 <!-- spring thread pool executor ...

  3. Java线程池的配置

    1.ThreadPoolExecutor的重要参数 1.corePoolSize:核心线程数 * 核心线程会一直存活,及时没有任务需要执行 * 当线程数小于核心线程数时,即使有线程空闲,线程池也会优先 ...

  4. Spring Boot中使用@Async的时候,千万别忘了线程池的配置!

    上一篇我们介绍了如何使用@Async注解来创建异步任务,我可以用这种方法来实现一些并发操作,以加速任务的执行效率.但是,如果只是如前文那样直接简单的创建来使用,可能还是会碰到一些问题.存在有什么问题呢 ...

  5. SpringMVC整合TaskExecutor线程池的配置/使用

    一.配置jdbc.properties添加: #------------ Task ------------ task.core_pool_size=5 task.max_pool_size=50 t ...

  6. 05 - Tomcat 线程池的配置与优化

    添加 Executor 在server.xml中的Service节点里面,增加executor节点,然后配置connector的executor属性,如下: <Executor name=&qu ...

  7. springboot+@async异步线程池的配置及应用

    示例: 1. 配置 @EnableAsync @Configuration public class TaskExecutorConfiguration { @Autowired private Ta ...

  8. 踩坑 Spring Cloud Hystrix 线程池队列配置

    背景: 有一次在生产环境,突然出现了很多笔还款单被挂起,后来排查原因,发现是内部系统调用时出现了Hystrix调用异常.在开发过程中,因为核心线程数设置的比较大,没有出现这种异常.放到了测试环境,偶尔 ...

  9. Spring线程池配置模板设计(基于Springboot)

    目录 线程池配置模板 基础的注解解释 常用配置参数 配置类设计 线程池使用 ThreadPoolTaskExecutor源码 线程池配置模板 springboot给我们提供了一个线程池的实现,它的底层 ...

随机推荐

  1. [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

    环境:  操作系统:64位WIN7   数据库:SQL Server 2000 SP1  开发语言:J2EE 在Servlet连接数据库时出错提示:  [Microsoft][ODBC 驱动程序管理器 ...

  2. Centos6.5 安装 RabbitMQ3.6.1

    Centos6.5 安装 RabbitMQ3.6.1 个人安装RabbitMQ总结: 安装编译工具 yum -y install make gcc gcc-c++ kernel-devel m4 nc ...

  3. PHPwind高级伪静态规则及方法

    phpwind iis下伪静态规则[ISAPI_Rewrite]RewriteRule ^(.*)/(.*)-htm-(.*)-(.*)\.html$ $1/$2\.php\?$3=$4Rewrite ...

  4. 关于JQ的$.deferred函数。参考网络文档

    由于jQuery版本问题对Deferred对象的实现有所不同,具体请参照jQuery api:   jQuery.Deferred()基于Promises/A规范实现,因为jQuery本身的设计风格, ...

  5. Jeff Dean

    "--出自"关于 Jeff Dean 的事实" 其实,"关于 Jeff Dean 的事实"这个G+ 帖中描述的并非是真实的.不过有人大费周折为他建立了 ...

  6. [问题2014A10] 解答

    [问题2014A10]  解答 考虑如下变形: \[(I_n-A)^2=(AA'-A)(I_n-A)=A(A'-I_n)(I_n-A)=-A(I_n-A)'(I_n-A).\] 因为 \(A\) 是非 ...

  7. [翻译]LSP程序的分类

    翻译的太垃圾,不建议其它人阅读本文. Note:LSP现在已经不推荐使用.自windows8和windows Server2012开始,使用Windows Filtering Platform. Wi ...

  8. redis参数与持久化原理

    [root@JR hx]# redis-cli info # Server redis_version:2.8.19 redis_git_sha1:00000000 redis_git_dirty:0 ...

  9. 从BATS交易所获取空头头寸

    Getting short volume from BATS   In my last post I have gone through the steps needed to get the sho ...

  10. win7下的ipython没有的问题

    在笔记本上安装python2.7后,执行python是可以的,但是ipython却不行. 一.问题排查 在网上搜索了看到python与ipython的区别: 例如:ipython有tab补全功能,然后 ...