Java线程池ThreadPoolExcutor

Java线程池ThreadPoolExcutor1 线程池的工作原理 1 1 线程池刚创建时 里面没有一个线程 任务队列是作为参数传进来的 不过 就算队列里面有任务 线程池也不会马上执行它们 1 2 当调用 execute 方法添加一个任务时 线程池会做如下判断 a 如果正在运行的线程数小于 corePoolSize 那么马上创建线程运行这个任务 b 如果正在运行的线程数大于或者等于 corePoolSize 那么将这个任务放入队列 c 如果这个时候队列满了 而且正在运行的线程数量小于 maximumPoolS 那么还是要创建线程运行这个

1.线程池的工作原理:

Java线程池ThreadPoolExcutor

1.1线程池刚创建时,里面没有一个线程。任务队列是作为参数传进来的。不过,就算队列里面有任务,线程池也不会马上执行它们。

1.3当一个线程完成任务时,它会从队列中取下一个任务来执行。

1.4当一个线程无事可做,超过一定的时间(keepAliveTime)时,线程池会判断,如果当前运行的线程数大于corePoolSize时,那么这个线程会被停用掉,所以线程池的所有任务完成后,它最终会收缩到corePoolSize的大小。

2.线程池有哪些配置

线程池可以使用java.util.concurrent.ThreadPoolExecutor来创建,在该类中包含最全参数的构造函数。

public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue 
  
    workQueue, ThreadFactory threadFactory, RejectedExecutionHandler handler) 
  

3.线程池的阻塞队列包含哪几种选择?

1. ArrayBlockingQueue 2. LinkedBlockingQueue 3. PriorityBlockingQueue 4. SynchronousQueue 

4.如果线程池已经满了可是还有新的任务提交怎么办?

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/227850.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午8:23
下一篇 2026年3月16日 下午8:23


相关推荐

  • MySQL常用函数大全(总结篇)

    MySQL常用函数大全(总结篇)本篇文章讲解是是 MySQL 的函数方法 涵盖所有的 MySQL 常见的方法 下面是本篇文章的目录结构 可以根据自己需求划到相应段落查找 一 数字函数二 字符串函数三 日期函数四 MySQL 高级函数 一 数字函数 1 ABS x 返回 x 的绝对值 SELECTABS 1 返回 12 AVG expression 返回一个表达式的平均值 expres

    2026年3月26日
    2
  • WPF WrapPanel

    WPF WrapPanelWrapPanel布局面板将各个控件从左至右按照行或列的顺序罗列,当长度或高度不够是就会自动调整进行换行,后续排序按照从上至下或从右至左的顺序进行。Orientation——根据内容自动换行。当Horizontal选项看上去类似于Windows资源管理器的缩略图视图:元素是从左向右排列的,然后自上至下自动换行。Vertical选项看上去类似于Windows资源管理器的列表视图:元素是从上…

    2022年7月23日
    9
  • 🦞 我不是肥妞,我只是一份OpenClaw 企业微信插件安装与配置保姆级教程

    🦞 我不是肥妞,我只是一份OpenClaw 企业微信插件安装与配置保姆级教程

    2026年3月13日
    5
  • PCI,PCI-X,PCI-E

    PCI,PCI-X,PCI-EPCI-X是PCI总线的扩展架构,PCI-X频率不像PCI那样固定,而是可以随着设备的变化而变化的。PCI-X采用64位PCI总线(PCI為32bit),可以支持66,100,133MHz这些频率。而在未来,可能将提供更多的频率支持。PCI-X标准的提出主要面向服务器I/O结构。PCI-X的设计目标在于提高CPU与外设之间的传输速度,能使服务器的I/O速度提高两倍。与原来的PCI标准开发商不同的是

    2022年5月7日
    57
  • JAVA对象转JSON字符串时格式化日期_oracle clob转字符串

    JAVA对象转JSON字符串时格式化日期_oracle clob转字符串本案例所有代码均为原创,使用Java手写,没有借鉴其他类似工具库和网上论坛博客,也许没有经过充分测试,可能出现未知bug,因此不建议拿到正式的项目里使用。Java对象就像一个文件夹一样,没有办法知道其深度,所以采用了递归。性能方面没有测试,个人认为没有特别耗费性能的地方,除非你的对象包含很多层级。它可以支持null,字符串,数字、日期、集合等多种类型,包括以上类型的多层嵌套,都没有问题。源码不多,如下:importjava.lang.reflect.Field;importjava.lang

    2026年2月11日
    5
  • Pycharm中安装Pygame方法「建议收藏」

    Pycharm中安装Pygame方法「建议收藏」本文转自:https://blog.csdn.net/zhangffyy/article/details/78524592第一步:打开Pycharm第二步:点File->DefaultSettings->ProjectInterpreter->点加号第三步:搜索Pygame->InstallPackage然后就安装好了,新建一个p

    2022年8月29日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号