内容简介:在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基础知识总结(面试必备)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Swift编程权威指南(第2版)
[美] Matthew Mathias、[美] John Gallagher / 陈晓亮 / 人民邮电出版社 / 2017-6 / 89.00元
Big Nerd Ranch是美国一家专业的移动开发技术培训机构,本书是其培训教材。书中系统讲解了在iOS和macOS平台上,使用苹果的Swift语言开发iPhone、iPad和Mac应用的基本概念和编程技巧。主要围绕使用Swift语言进行iOS和macOS开发,结合大量代码示例,教会读者利用高级iOS和macOS特性开发真实的应用。一起来看看 《Swift编程权威指南(第2版)》 这本书的介绍吧!