知识大全 Java线程池如何体现自己的用途
Posted 知
篇首语:书到用时方恨少,事非经过不知难。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java线程池如何体现自己的用途相关的知识,希望对你有一定的参考价值。
Java线程池如何体现自己的用途 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
Java线程池就像数据库连接池一样 是一个对象池 我们在使用的时候需要不断的学习 这样才能不断的适应相关语言技术的变化 所有的对象池都有一个共同的目的 那就是为了提高对象的使用率 从而达到提高程序效率的目的
比如对于Servlet 它被设计为多线程的(如果它是单线程的 你就可以想象 当 个人同时请求一个网页时 在第一个人获得请求结果之前 其它 个人都在郁闷地等待) 如果为每个用户的每一次请求都创建一个新的线程对象来运行的话 系统就会在创建线程和销毁线程上耗费很大的开销 大大降低系统的效率 因此 Servlet多线程机制背后有一个Java线程池在支持 线程池在初始化初期就创建了一定数量的线程对象 通过提高对这些对象的利用率 避免高频率地创建对象 从而达到提高程序的效率的目的
下面实现一个最简单的Java线程池 从中理解它的实现原理 为此我们定义了四个类 它们的用途及具体实现如下
Task(任务) 这是个代表任务的抽象类 其中定义了一个deal()方法 继承Task抽象类的子类需要实现这个方法 并把这个任务需要完成的具体工作在deal()方法编码实现 Java线程池中的线程之所以被创建 就是为了执行各种各样数量繁多的任务的 为了方便线程对任务的处理 我们需要用Task抽象类来保证任务的具体工作统一放在deal()方法里来完成 这样也使代码更加规范
Task的定义如下
Java代码
public abstract class Task
public enum State
/* 新建 */NEW /* 执行中 */RUNNING /* 已完成 */FINISHED
// 任务状态
private State state = State NEW;
public void setState(State state)
this state = state;
public State getState()
return state;
public abstract void deal();
public abstract class Task
public enum State
/* 新建 */NEW /* 执行中 */RUNNING /* 已完成 */FINISHED
// 任务状态
private State state = State NEW;
public void setState(State state)
this state = state;
public State getState()
return state;
public abstract void deal();
cha138/Article/program/Java/gj/201311/27369
相关参考
JAVA线程池使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! packagetendernm
JAVA线程池的使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! packagetendern
Java线程池在使用中的问题解疑 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Java线程池需
Java代码构建一个线程池 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本示例程序由三个类构成
Java线程池在运行后的结果反查 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Java线程池需
Java学习:线程池的简单构建 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 现在服务器端的应用
Java线程池技术实现TCP端口扫描 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n
典型Java线程池的代码及其各部分功能介绍 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ()根
知识大全 JDK5 java.util.concurrent 线程池[2]
JDK5java.util.concurrent线程池[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
知识大全 JDK5 java.util.concurrent 线程池[1]
JDK5java.util.concurrent线程池[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看