`
hany
  • 浏览: 61563 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JDK1.4线程池

阅读更多
Jdk1.4下线程池
       JSR 166 (java.util.concurrent)是jdk1.5的部分,它给我们的多线程开发带来很多方便。因为很多应用环境还是在jdk1.4下,目前还无法升级到jkd1.5,如我们的项目很多是在weblogic8.1上运行。想在jdk1.4下享受JSR 166的好处,可以使用backport-util-concurrent,下载地址为:http://backport-jsr166.sourceforge.net/index.php
       backport-util-concurrent的api和jdk1.5的 java.util.concurrent基本一致吧,可以参照jdk1.5的中文doc,去做。
       通常项目中都使用spring,可以把连接池配到spring里,当成一个服务使用。(因为使用的spring版本比较低1.2.8),
1.         在spring中配置连接池
<!-- BlockingQueue -->
<bean id="blockingQueue" class="edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue">
    <constructor-arg><value>2000</value></constructor-arg>
</bean>
<bean id="timeUnit" class="edu.emory.mathcs.backport.java.util.concurrent.TimeUnit" factory-method="valueOf">
    <constructor-arg><value>SECONDS</value></constructor-arg>
</bean>
<!-- work thread pool -->
<bean id="executorService" class="edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor" destroy-method="shutdown">
    <!--池中所保存的线程数,包括空闲线程 -->
    <constructor-arg><value>10</value></constructor-arg>
    <!-- 池中允许的最大线程数 -->
    <constructor-arg><value>200</value></constructor-arg>
    <!-- 当线程数大于核心时,此为终止前多余的空闲线程等待新任务的最长时间 -->
    <constructor-arg><value>60</value></constructor-arg>
    <!-- 参数的时间单位 -->
    <constructor-arg><ref bean="timeUnit"/></constructor-arg>
    <!-- 执行前用于保持任务的队列。此队列仅保持由 execute 方法提交的 Runnable 任务 -->
    <constructor-arg><ref bean="blockingQueue"/></constructor-arg>
</bean>
2.         实现Callable接口
public class QfSlave
    implements Callable
{
public Object call() throws Exception
{//你的线程任务
}
}
3.         提交任务到线程池,将executorService注入到需要线程池的地方
QfSlave  slave = new QfSlave();
executorService.submit(slave);//提交任务

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/nearsun/archive/2008/02/02/2077961.aspx
分享到:
评论

相关推荐

    jdk1.4绿色免安装版

    **Java Development Kit (JDK) 1.4 绿色免安装版详解** JDK(Java Development Kit)是Oracle公司发布的用于开发Java应用程序的工具集,它包含了Java编译器、Java虚拟机(JVM)、Java类库以及一系列用于调试、性能...

    jdk1.4安装文件

    **Java Development Kit (JDK) 1.4 安装指南** JDK 1.4是Java编程语言的一个重要版本,由Sun Microsystems在2003年发布。它包含了Java运行环境(Java Runtime Environment, JRE)以及开发工具,如Java编译器(javac...

    JDK1.4使用线程池

    NULL 博文链接:https://hany.iteye.com/blog/516597

    tomcat5.5.28(支持jdk1.4并带有控制台)

    这个版本的亮点在于它兼容较旧的Java Development Kit (JDK) 1.4,这意味着即使在不支持新版本JDK的环境中,开发者也能顺利运行Tomcat服务器。Tomcat作为轻量级应用服务器,因其开源、免费和高效而备受青睐。 ...

    j2sdk1.4.2.rar

    描述中的“jdk1.4”进一步确认了我们正在讨论的是Java开发工具包的1.4版。这个版本引入了许多重要的新特性和改进,对当时的Java开发者来说具有重要意义。 标签“java jdk jdk1.4”是对该文件内容的关键词标注,它们...

    asyncnio:Java 的 JDK7+ 异步套接字通道的洁净室实现(建立在 JDK1.4+ NIO SocketChannel apis 之上)

    为默认组和通道实现自动线程池和执行程序服务管理。 为超时、工作线程计数和其他性能调整参数提供可调设置包含对zero-copy传输的实验性支持。 (新功能**) 笔记** AFAIK,异步zero-copy传输不是 JDK NIO.2 提案的...

    quartz-1.4.5以及源码

    5. **线程池**:Quartz允许自定义线程池,以适应不同的并发需求。任务执行是在调度器创建的线程上进行的。 6. **持久化**:Quartz的作业和触发器可以通过JDBCJobStore持久化到数据库中,这样即使在服务器故障后,也...

    Java线程池文档

    Java代码中展示的`ThreadPool`类是作者实现的一个简单线程池示例,使用了`LinkedList`作为工作队列,`ThreadPool`类继承了`ThreadGroup`,这在JDK 1.4版本中是一种常见实现方式。但在JDK 1.5及以上版本,推荐使用`...

    java线程池的使用方式

    在早期的JDK版本(如JDK 1.4及之前)中,线程池的功能相对简单,使用起来不够灵活。然而,自JDK 1.5开始,随着`java.util.concurrent`包的引入,Java线程池的功能得到了极大的增强,为开发者提供了更加高效且易于...

    Java Threads Third Edition

    这本书详细对比了JDK 1.4和JDK 1.5之间的差异,帮助开发者理解不同版本下线程处理的进化与改进。 在Java编程中,线程是并发执行的程序片段,它使得一个应用程序可以在同一时间执行多个任务。Java提供了丰富的API来...

    JDK 1.8 API中文版 CHM

    4. **NIO(非阻塞I/O)**:`java.nio`包在JDK 1.4引入,提供了基于通道(Channel)和缓冲区(Buffer)的I/O模型,可以提高I/O操作的效率。 5. **Lambda表达式**:JDK 1.8引入的重大特性,简化了函数式编程,使得...

    JDK1.8 API 中文 java帮助文档1.8 最新 最全 准确

    并行流底层使用了`ForkJoinPool`,这是一种工作窃取算法的线程池,能够有效地利用多核处理器资源,提高并行计算性能。 #### 2.2 `ConcurrentHashMap`的改进 `ConcurrentHashMap`在1.8中进行了优化,提供了更好的...

    jdk文档.rar,jdk文档.rar,jdk文档.rar

    10. **并发编程改进**:从Java 5开始,Java并发API持续优化,如ForkJoinPool和CompletableFuture提供了并行计算的支持,而ExecutorService和ThreadPoolExecutor提供了线程池管理。 以上只是JDK文档中部分重要知识点...

    quartz所需jar包 1.6.0、1.8.5、2.2.1三个版本

    - Quartz 1.x系列是早期的版本,主要支持JDK 1.4及以上版本。 - 这个版本提供了基础的任务调度功能,包括可配置的触发器(Trigger)和作业(Job),用于定义任务执行的时间和行为。 - `quartz-all-1.6.0.jar`包含...

    JDK1.5和Tomcat5.5.9.rar

    3. **更好的线程管理**:优化了线程池的配置和管理,以提高服务器处理并发请求的能力。 4. **改进的安全性**:增强了对HTTP安全头的支持,以及对SSL/TLS连接的管理。 5. **部署和管理工具**:提供了管理和监控应用的...

    IO模型介绍,理解java常见的IO模型

    - JDK1.4之前的唯一选择。 ##### 2.2 应用场景 - 连接数较少的场景,如小型网站或内部管理系统。 - 服务器资源充足,能够承受较高的线程开销。 ##### 2.3 示例 - 当客户端发起连接请求时,服务器端为每个客户端...

    最新JDK教程(CHM版)

    ##### 1.4 CHARSET - **定义**:字符集编码转换器,用于将字符序列转换为字节序列或反之。 - **构造和使用**: - 创建`Charset`对象:`Charset charset = Charset.forName("UTF-8");` - 获取编码器和解码器:`...

    Tomcat服务器性能调优几个方面[定义].pdf

    例如,JDK1.5对比JDK1.4,性能提升了25%-75%。选择适合项目需求的高版本JVM,可以有效提高Tomcat的运行效率。此外,调整JVM的堆内存大小、垃圾回收策略、线程池设置等也是关键步骤。 第三,**Apache与Tomcat的集成*...

    JDK_API_1_6_zh_CN.zip_Java编程_Java_

    NIO(New Input/Output)在JDK 1.4引入,JDK 1.6进一步完善,提供非阻塞I/O,支持选择器和通道,提高了大规模数据处理的性能。 4. 多线程: JDK 1.6在多线程方面做了改进,增加了线程池的管理,通过...

Global site tag (gtag.js) - Google Analytics