摘要:本人邮箱欢迎转载转载请注明网址代码已经全部托管有需要的同学自行下载引言自动的两个线程池讲完今天就讲跟他们有关的一个工具类吧理论仅仅是一个线程池的工具类它无法实例话包含都是静态方法或静态类创建一个指定线程数量的线程池创建一个可以自定义的线
引言本人邮箱:
欢迎转载,转载请注明网址 http://blog.csdn.net/tianshi_kco
github: https://github.com/kco1989/kco
代码已经全部托管github有需要的同学自行下载
java 自动的两个线程池讲完,今天就讲跟他们有关的一个工具类吧--Executors
理论Executors 仅仅是一个线程池的工具类,它无法实例话,包含都是静态方法或静态类.
newFixedThreadPool(int nThreads) 创建一个指定线程数量的线程池t nThreads, ThreadFactory threadFactory)` 创建一个可以自定义的线程工厂的指定线程数量的线程池
newSingleThreadExecutor() 创建一个只有一个线程的线程池
newSingleThreadExecutor(ThreadFactory threadFactory) 创建一个可以自定义线程工程的且只有一个线程的线程池
newCachedThreadPool 创建一个可以缓存的线程池,它的源码其实是return new ThreadPoolExecutor(0, Integer.MAX_VALUE,60L, TimeUnit.SECONDS,new SynchronousQueue
newCachedThreadPool(ThreadFactory threadFactory) 跟上面一样,只是多了可以自定义线程工厂
newSingleThreadScheduledExecutor() 创建一个只有一个线程的任务调度线程池.
newSingleThreadScheduledExecutor(ThreadFactory threadFactory) 创建一个只有一个线程且能自定义线程工程的任务调度线程池
newScheduledThreadPool(int corePoolSize) 创建指定线程数量的任务调度线程池
newScheduledThreadPool(int corePoolSize, ThreadFactory threadFactory) 创建一个可以指定数量写自定义线程工程的任务调度线程池
除此之外,Executors还提供了让Runnable转化为Callable的适配器
例子这个章节就不写例子,前面学了线程池的知识之后,直接看Executors源码,就感觉比较清晰
打赏如果觉得我的文章写的还过得去的话,有钱就捧个钱场,没钱给我捧个人场(帮我点赞或推荐一下)
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/70010.html
摘要:方法接受一个生产者作为参数,返回一个对象,该对象完成异步执行后会读取调用生产者方法的返回值。该方法接收一个对象构成的数组,返回由第一个执行完毕的对象的返回值构成的。 一、Future 接口 在Future中触发那些潜在耗时的操作把调用线程解放出来,让它能继续执行其他有价值的工作,不再需要呆呆等待耗时的操作完成。打个比方,你可以把它想象成这样的场景:你拿了一袋子衣服到你中意的干洗店去洗。...
摘要:哪吒社区技能树打卡打卡贴函数式接口简介领域优质创作者哪吒公众号作者架构师奋斗者扫描主页左侧二维码,加入群聊,一起学习一起进步欢迎点赞收藏留言前情提要无意间听到领导们的谈话,现在公司的现状是码农太多,但能独立带队的人太少,简而言之,不缺干 ? 哪吒社区Java技能树打卡 【打卡贴 day2...
摘要:整个包,按照功能可以大致划分如下锁框架原子类框架同步器框架集合框架执行器框架本系列将按上述顺序分析,分析所基于的源码为。后,根据一系列常见的多线程设计模式,设计了并发包,其中包下提供了一系列基础的锁工具,用以对等进行补充增强。 showImg(https://segmentfault.com/img/remote/1460000016012623); 本文首发于一世流云专栏:https...
摘要:注意线程与本地操作系统的线程是一一映射的。固定线程数的线程池提供了两种创建具有固定线程数的的方法,固定线程池在初始化时确定其中的线程总数,运行过程中会始终维持线程数量不变。 showImg(https://segmentfault.com/img/bVbhK58?w=1920&h=1080); 本文首发于一世流云专栏:https://segmentfault.com/blog... ...
摘要:并不会为每个任务都创建工作线程,而是根据实际情况构造线程池时的参数确定是唤醒已有空闲工作线程,还是新建工作线程。 showImg(https://segmentfault.com/img/bVbiYSP?w=1071&h=707); 本文首发于一世流云的专栏:https://segmentfault.com/blog... 一、引言 前一章——Fork/Join框架(1) 原理,我们...
阅读 2534·2021-11-23 09:51
阅读 3089·2019-08-30 15:54
阅读 1037·2019-08-30 14:14
阅读 3483·2019-08-30 13:59
阅读 1335·2019-08-29 17:09
阅读 1430·2019-08-29 16:24
阅读 2820·2019-08-29 15:43
阅读 864·2019-08-29 12:45