内容简介:在Java 5之后,ExecutorService类被引入,主要是为了方便线程的统一管理。ExecutorService其实是一个线程池,它可以接收任务,然后根据配置来分配线程,并控制其调度。这个线程和newCacheThreadPool很类似,不同点在于:
在 Java 5之后,ExecutorService类被引入,主要是为了方便线程的统一管理。
ExecutorService的作用
ExecutorService其实是一个线程池,它可以接收任务,然后根据配置来分配线程,并控制其调度。
分类
newCacheThreadPool
- 这种线程池是无界线程池,即它可以创建任意条线程。
- 每次创建新线程时,先检查自己的缓存池中有没有,没有才会创建。
- 它有默认的TimeOut(=60s),超过这个时长没活动的线程就会被自动的移除,所以完全不必要担心线程的结束问题。
- 这是比较推荐的类型。
newFixedThreadPool
这个线程和newCacheThreadPool很类似,不同点在于:
- 它有线程数量上限。
- 它没有默认的TimeOut。
ScheduledThreadPool
- 它可以按照顺序延迟调度线程。
SingleThreadPool
- 它只有一条线程。
- 感觉并没有多大用处。
ThreadPoolExecutor
这种类型的线程池可以自己配置相关参数。
参数 | 说明 |
---|---|
corePoolSize | 池中所保存的线程数,包括空闲线程。 |
maximumPoolSize | 池中允许的最大线程数。’ |
keepAliveTime | 当线程数大于核心时,此为终止多余的空闲等待新任务的线程的最长时间。 |
workQueue | 执行前用于保持任务的队列。此队列仅保持由 execute 方法提交的 Runnable 任务。 |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Java 面试题 200+ 全解析:面试必备
- 面试必备:《Java 最常见 200+ 面试题全解析》
- 2019“寒冬”前端面试必备(持续更新...)
- 腾讯这套SpringMvc面试题你懂多少(面试必备)
- Redis 基础知识总结(面试必备)
- Redis基础知识总结(面试必备)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Machine Learning
Kevin Murphy / The MIT Press / 2012-9-18 / USD 90.00
Today's Web-enabled deluge of electronic data calls for automated methods of data analysis. Machine learning provides these, developing methods that can automatically detect patterns in data and then ......一起来看看 《Machine Learning》 这本书的介绍吧!