美文网首页
线程池简介

线程池简介

作者: yoohooo | 来源:发表于2017-06-14 20:17 被阅读0次

自JDK1.5,Java吊炸天的并发包就提供线程池java.util.concurrent.ThreadPoolExecutor ,先来看看其各个字段的含义:
corePoolSize 核心线程数,指保留的线程池大小(不超过maximumPoolSize值时,线程池中最多有corePoolSize 个线程工作)。
maximumPoolSize 指的是线程池的最大大小(线程池中最大有corePoolSize 个线程可运行)。
keepAliveTime 指的是空闲线程结束的超时时间(当一个线程不工作时,过keepAliveTime 长时间将停止该线程)。
unit 是一个枚举,表示 keepAliveTime 的单位(有NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS,7个可选值)。
workQueue 表示存放任务的队列(存放需要被线程池执行的线程队列)。 handler 拒绝策略(添加任务失败后如何处理该任务).
关于corePoolSize、maxPoolSize、queueCapacity之间的关系: corePoolSize为初始线程个数,当corePoolSize的线程都在执行中时,则将Runnable临时放入queueCapacity的缓冲队列中等待,当queueCapacity满了时,才会将线程个数从corePoolSize扩展至maxPoolSize,如果此时queueCapacity缓存队列任然是满的,则后续Runnable对象加入其中时就会被abort抛弃。

这位兄弟提供了很好的代码说明例子,具体可参见:http://dmwdmc.iteye.com/blog/1882475。例子中有模拟整个线程池都满了抛弃后面任务的场景。

相关文章

  • 线程以及java线程池实现分享

    线程以及java线程池实现分享 线程简介 JDK线程池的工作原理 JDK线程池的实现细节 1.线程简介-由来 1....

  • ThreadPoolExecutor源码走读

    ThreadPoolExecutor简介 关于线程池的简介我们可以点击这边文章线程池简介,这篇文章我们主要通过源码...

  • [第三篇]深入学习线程池之优雅的关闭线程池

    通过 《深入学习线程池之线程池简介及工作原理》、《深入学习线程池之通过ThreadPoolExecutor创建线程...

  • 线程池

    1.线程池简介 1.1 线程池的概念 线程池就是首先创建一些线程,它们的集合称为线程池。使用线程池可以很好地提高性...

  • 线程池

    线程池简介: android提供了四种线程池,都是由直接或简介配置ThreadPoolExecutor来实现的。 ...

  • JUC线程池(2):ThreadPoolExecutor类

    ThreadPoolExecutor简介 ThreadPoolExecutor是线程池类。线程池可以理解为“存放一...

  • 【Android】线程池原理及使用

    1 线程池简介 线程池指的是ThreadPoolExecutor,它实现了ExecutorService接口,并封...

  • 线程池简介

    自JDK1.5,Java吊炸天的并发包就提供线程池java.util.concurrent.ThreadPoolE...

  • 线程池简介

    线程池的好处 降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗; 提高系统响应速度,当有任务到...

  • 线程池简介

    线程运行机制(了解) 开启线程过多,会消耗cpu资源单核cpu,同一时刻只能处理一个线程,多核cpu同一时刻可以处...

网友评论

      本文标题:线程池简介

      本文链接:https://www.haomeiwen.com/subject/mkyeqxtx.html