Java线程池
2016-06-20 19:40
351 查看
多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。
假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。
如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。
一个线程池包括以下四个基本组成部分:
1、线程池管理器(ThreadPool):用于创建并管理线程池,包括 创建线程池,销毁线程池,添加新任务;
2、工作线程(PoolWorker):线程池中线程,在没有任务时处于等待状态,可以循环的执行任务;
3、任务接口(Task):每个任务必须实现的接口,以供工作线程调度任务的执行,它主要规定了任务的入口,任务执行完后的收尾工作,任务的执行状态等;
4、任务队列(taskQueue):用于存放没有处理的任务。提供一种缓冲机制。
假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。
如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。
一个线程池包括以下四个基本组成部分:
1、线程池管理器(ThreadPool):用于创建并管理线程池,包括 创建线程池,销毁线程池,添加新任务;
2、工作线程(PoolWorker):线程池中线程,在没有任务时处于等待状态,可以循环的执行任务;
3、任务接口(Task):每个任务必须实现的接口,以供工作线程调度任务的执行,它主要规定了任务的入口,任务执行完后的收尾工作,任务的执行状态等;
4、任务队列(taskQueue):用于存放没有处理的任务。提供一种缓冲机制。
相关文章推荐
- java 工厂模式
- 【每天学一点】JAVA Servlet相关02
- spring boot 第二课-完成单表操作及分页查询
- Mybits Demo
- Spring框架学习(1)
- Java多线程(一)基本用法
- NYOJ-12 喷水装置(二)
- Java反射与内省的区别
- Google Maps API in Java ME
- Eclipse plugin SWT Win32 Extension
- MVC Web Project-eclipse下的struts2插件
- UUID.java-J2ME 中javax.bluetooth里的UUID生成类
- blackberry eJDE eclipse plugin update site
- Java数组
- 【Struts1】--ip限制
- java课程总结
- 使用mybatis的逆向工程(xml方式)创建java代码
- Dekker算法和Peterson算法解决互斥锁的并发的Java实现
- java视频格式转换代码
- 20145127 《Java程序设计》第五次实验报告