ToB企服应用市场:ToB评测及商务社交产业平台

标题: 线程池的简介说明 [打印本页]

作者: 铁佛    时间: 2022-8-23 22:52
标题: 线程池的简介说明
转自:
 http://www.java265.com/JavaMianJing/202110/16347235251523.html
在多线程应用程序开发中,如果我们不使用线程池,则每次创建和销毁线程将会消耗宝贵的CPU,内存资源,所以我们必须创建一个线程池
线程池的功能

线程池用于管理线程,用于减少系统资源消耗
创建一个线程池
  1. 实现思路:
  2.      借助线程池类Executor
  3.          借助其构造方法
  4.          public ThreadPoolExecutor(int corePoolSize,  
  5.                               int maximumPoolSize,  
  6.                               long keepAliveTime,  
  7.                               TimeUnit unit,  
  8.                               BlockingQueue<Runnable> workQueue,  
  9.                               ThreadFactory threadFactory,  
  10.                               RejectedExecutionHandler handler)
复制代码
ThreadPoolExecutor构造方法的功能:
定义线程池的各种属性:
线程池中的corePoolSize就是线程池中的核心线程数量,这几个核心线程,只是在没有用的时候,也不会被回收
maximumPoolSize就是线程池中可以容纳的最大线程的数量
keepAliveTime,就是线程池中除了核心线程之外的其他的最长可以保留的时间,因为在线程池中,除了核心线程即使在无任务的情况下也不能被清除,其余的都是有存活时间的,非核心线程可以保留的最长的空闲时间
util,就是计算这个时间的一个单位
workQueue,就是等待队列,任务可以储存在任务队列中等待被执行,执行的是FIFIO原则(先进先出)
threadFactory,就是创建线程的线程工厂
handler,是一种拒绝策略,当任务满了,拒绝执行的策略
handler的拒绝策略

常见的线程池


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4