线程池

线程池参数:
线程池一共有7个参数,分别是:

public ThreadPoolExcutor(
int corePoolSize,
int maximumPoolSize,
long keepAliveTime,
TimeUnit unit,
BlockingQueue<Runnable> workQueue,
ThreadFactory threadFactory,
RejectedExecutionHandler handler){
}
  1. corePoolSize 线程池核心线程大小
    线程池会维护一个最小的线程数量,即使这些线程处于空闲状态,它们也不会被销毁

  2. maximumPoolSize 最大线程数量
    如果  1.核心线程全部处于工作状态
        2.等待队列已满
    那么新加入任务后,线程池会创建一个新的线程,这个新线程用于处理等待队列首部的任务,新的任务被加入到等待队列的尾部

线程池不会无限制地去创建新线程,它会有一个最大线程数量的限制,即不能超过maximumPoolSize

  1. keepAliveTime
    如果当前线程数量超过核心线程数量,并且存在线程处于空闲状态,那么在指定时间KeepAliveTime后,这个空闲的线程将会被销毁

  2. unit
    KeepAliveTime的单位

  3. workQueue 工作队列
    即等待队列,在创建时应指定大小

  4. 线程工厂

  5. 拒绝策略

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容