zoukankan      html  css  js  c++  java
  • 线程池七大参数解析

    先展示一下jdk8中ThreadPoolExecutor构造方法的源码

    public ThreadPoolExecutor(int corePoolSize,
    int maximumPoolSize,
    long keepAliveTime,
    TimeUnit unit,
    BlockingQueue<Runnable> workQueue,
    ThreadFactory threadFactory,
    RejectedExecutionHandler handler) {
    if (corePoolSize < 0 ||
    maximumPoolSize <= 0 ||
    maximumPoolSize < corePoolSize ||
    keepAliveTime < 0)
    throw new IllegalArgumentException();
    if (workQueue == null || threadFactory == null || handler == null)
    throw new NullPointerException();
    this.acc = System.getSecurityManager() == null ?
    null :
    AccessController.getContext();
    this.corePoolSize = corePoolSize;
    this.maximumPoolSize = maximumPoolSize;
    this.workQueue = workQueue;
    this.keepAliveTime = unit.toNanos(keepAliveTime);
    this.threadFactory = threadFactory;
    this.handler = handler;
    }
    corePoolSize    //核心线程数量,会一直存在,除非allowCoreThreadTimeOut设置为true
    maximumPoolSize  //线程池允许的最大线程池数量
    keepAliveTime   //线程数量超过corePoolSize,空闲线程的最大超时时间
    unit        //超时时间的单位
    workQueue     //工作队列,保存未执行的Runnable 任务
    threadFactory   //创建线程的工厂类
    handler      //当线程已满,工作队列也满了的时候,会被调用。被用来实现各种拒绝策略。
  • 相关阅读:
    2. 商城项目完整购物链路 lq
    如何看源码? lq
    事务的了解 lq
    1. 商城业务架构分析 lq
    并发的基础知识 lq
    mysql 索引 lq
    mysqlinnodb了解 lq
    IE6.0、IE7.0 与FireFox CSS兼容的解决方法
    CSS:html/css教程:背景图片的定位问题详解
    IE6 BUG
  • 原文地址:https://www.cnblogs.com/chuzijing/p/14445866.html
Copyright © 2011-2022 走看看