线程池中核心线程数与最大线程数与缓冲任务队列的关系?

在Java中的线程池(如ThreadPoolExecutor)中,核心线程数(corePoolSize)、最大线程数(maximumPoolSize)以及缓冲队列(workQueue)之间存在着密切的关系,它们共同决定了线程池如何管理和调度任务。以下是它们之间的关系概述:

  1. 核心线程数 (corePoolSize)

  2. 核心线程是线程池中最基础的线程数,即使在没有任务执行时,也会一直存活在线程池中。

  3. 当提交新任务时,线程池首先尝试创建或保持至多corePoolSize个线程来处理任务(长工)。

  4. 最大线程数 (maximumPoolSize)

  5. 当核心线程数全部处于活动状态且仍有新任务提交时,线程池将创建额外的线程(临时工),直至线程总数达到maximumPoolSize。

  6. 当线程数达到maximumPoolSize时,线程池不会再创建新的线程,除非现有线程中有线程终止。

  7. 缓冲队列 (workQueue)

  8. 只要有任务,新提交的任务会被放入缓冲队列中等待执行,当有长工不忙的时候,长工领任务执行.

  9. 当所有核心线程都在忙,并且缓冲队列尚未满时,新提交的任务也会被放入队列中排队(等待长工去执行)。

  10. 若队列已满(即有界队列的情况),并且线程数未达到maximumPoolSize,线程池会创建新的非核心线程(临时工)来执行任务。

  11. 当线程数已经达到maximumPoolSize,而缓冲队列也已经满了,这时线程池将依据预先设定的拒绝策略来处理无法接受的任务,例如丢弃任务、抛出异常或调用用户自定义的拒绝处理器。

综上所述,线程池的工作机制是这样的:

  • 先使用核心线程执行任务。

  • 当核心线程不足时,新任务入队列等待。

  • 当队列满且线程数未达最大值时,增加非核心线程执行任务。

  • 当队列满且线程数已达最大值时,触发拒绝策略处理新来的任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/817883.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用pytorch进行图像分类

如何使用pytorch进行图像分类https://featurize.cn/notebooks/5a36fa40-490e-4664-bf98-aa5ad7b2fc2f

【软考】UML中的图之用例图

目录 1. 说明2. 建模2.1 说明2.2 语境建模2.3 需求建模 3. 图示4. 组成部分 1. 说明 1.用例图(Use Case Diagram)。2.展现了一组用例、参与者(Actor)以及它们之间的关系。3.用例图通常包括以下的内容:用例、参与者、用…

配置IP地址并验证连通性

1.实验环境 主机 A和主机 B通过一根网线相连,如图6.13所示。 图6.13 实验案例一示意图 2.需求描述 为两台主机配置!P地址,验证P地址是否生效;验证同一网段的两台主机可以互通,不同网段的主机不能直接互通。 3.推荐步骤 为两台…

uni原生导航栏相关设置

动态设置某一项内容 使用场景:不同角色显示不同导航栏或设置不同名称,不同图标 API: uni.setTabBarItem(OBJECT) 属性类型默认值必填说明indexnumber无是tabBar的哪一项,从左边算起(从0开始)textString无否tab上的按…

【Linux】封装一下简单库 理解文件系统

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、封装一下简单库 二、理解一下stdin(0)、stdout(1)、stderr(3) 2.1、为什么要有0、1、2呢? 2.2、特点 2.3、如果我想让2也和1重定向到一个文件…

uni-app 微信小程序设置全局转发给朋友、分享到朋友圈

小程序右上角原生菜单自带的分享按钮,默认不可用 1.创建一个mixin share.js export default {created() {//#ifdef MP-WEIXINwx.showShareMenu({withShareTicket: true,menus: [shareAppMessage, shareTimeline]});//#endif}, }export default {created() {//#ifde…

Linux学习 - 常用和不太常用的实用awk命令

Linux学习 - 常用和不太常用的实用awk命令 Linux学习系列文章是生信宝典最开始主推的一块,力图从一个新额视角帮助初学者快速入门Linux系统,熟悉Linux下的文件和目录,文件操作, 文件内容操作。而且教程摒弃了完美操作&#xff0c…

immutable variables, constants的区别(rust)

let immutable_variable 1590865; //不可变变量 const constant_variable 0096; //常量常量、不可变变量一样,都无法更改变量的值,但是常量和不可变变量之间存在以下区别: 不可变变量默认不可变,编译器会进行检查。常量不仅在默…

vs2022断点调试怎么看堆栈帧,找异常位置

打一个断点以后,会出现如图报错 我们要怎么找到报错的语句?鼠标点击->堆栈帧->上一行运行的位置->直到找到错误出错如图所示: 跳转到,我们手写的代码,执行出错的位置

意大利西班牙罗马尼亚葡萄牙网红达人:探索广告媒介公司的资源与合作机会

【本篇由言同数字科技有限公司原创】在当今数字化时代,品牌营销已经不再局限于传统媒体,而是转向了社交媒体平台,其中包括北美地区的TikTok和YouTube。这两个平台为品牌提供了直播带货的绝佳机会,而北美网红则成为了品牌推广和产品…

Unity | Shader基础知识(第十二集:颜色混合)

目录 前言 一、日常生活中的常见现象 二、unity自带的一个结构体(表面着色器SurfaceOutputStandard) 三、自己写一个颜色混合的Shader 1.只加基础颜色Albedo 2.加入法线 3.加入光滑度 4.加入金属度 5.加入自发光 四、作者的话 前言 shader里每一…

docker安装nessus服务及使用

Nessus 是目前全世界最多人使用的系统漏洞扫描与分析软件,现在软件服务越来越多,越来越复杂,涉及的数据也更多;因此系统完成后对于系统漏洞的检测并对其进行修改十分有必要,本文介绍通过docker安装nessus服务及简单的使…

设计模式-模板方法模式(TemplateMethod)

1. 概念 模板方法模式是一种行为设计模式,它在一个方法中定义算法的骨架,将一些步骤延迟到子类中实现。 2. 原理结构图 2.1 图 2.2 角色 抽象类(Abstract Class) 定义抽象的基本操作(Primitive Operations&#xff…

从启发式到模型化 京东推荐广告排序机制演化

1、序言:广告排序机制的前世今生 1.1、简介:广告排序机制 在线广告是国内外各大互联网公司的重要收入来源之一,而在线广告与传统广告最大的区别就在于其超大规模的实时竞价环境:数以万计的广告主在一天内可以参与亿级别的流量竞…

刷题记录3

# 10 字符个数统计 描述 编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次 例如,对…

C#系统学习汇总

一、基础篇 C#简介 C#环境 C#程序结构 C#基本语法 C#数据类型 C#类型转换 C#变量 C#常量 C#运算符 C#判断 C#循环 二、中级篇 C#方法 C#可空类型(Nullable) C#数组(Array) C#字符串(String) C#结构体(Struct) C#枚举(Enum) C#类(Class) C#继承(Inheritance)…

解决宝塔的FTP无法使用被动模式

问题:宝塔安装完ftp管理软件之后,无法使用被动模式连接 解决: 提示: 如果还是不行,那么要看看防火墙和安全组有没有放行被动模式的端口,宝塔安装的pure-ftpd软件的被动模式端口默认是39000至400…

Kubernetes 升级不弃 Docker:KubeKey 的丝滑之道

作者:尹珉,KubeSphere Ambaasador&Contributor,KubeSphere 社区用户委员会杭州站站长。 引言 随着 Kubernetes 社区的不断发展,即将迎来 Kubernetes 1.30 版本的迭代。在早先的 1.24 版本中,社区作出一个重要决策…

计算机网络——42攻击和对策

攻击和对策 IDS:入侵检测系统 分组过滤 对TCP/IP头部进行检查不检查会话间的相关性 IDS:intrusion detection system 深入分组检查:检查分组的内容(e.g. 检查分组中的特征串,已知攻击数据库的病毒和攻击串)检查分组间…

【网站项目】捷邻小程序

🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板&#xff…