Java线程池的七个参数

news2024/9/20 22:45:40

线程池的构造函数有7个参数,分别是corePoolSize、maximumPoolSize、keepAliveTime、unit、workQueue、threadFactory、handler
在这里插入图片描述
在这里插入图片描述

一、corePoolSize

核心线程数,是指线程池中长期存活的线程数。int 类型。可以理解为长期存在的、“常驻的”线程。就好比是地主家的长工一样,无论这一年的活多还是活少,都不会被辞退。

二、maximumPoolSize 线程池最大线程数量

最大线程数,是指线程池允许创建的最大线程数量。最大线程数的数量包含核心线程数。int 类型。比如,地主家的活太多了,光要长工可能干不完,需要一些临时工来帮忙,长工的数量 + 临时工的数量 = 最大线程数。
需要注意的是,在创建线程池的时候,最大线程数 maximumPoolSize 不能小于核心线程数 corePoolSize,否则会在程序运行时报异常:
核心线程数为 2,最大线程数为 1,报 java.lang.IllegalArgumentException 异常,但是最大线程数可以等于核心线程数

三、keepAliveTime 空闲线程存活时间

空闲线程存活时间,指当线程池中没有任务是,会销毁一些线程,
销毁的线程数 = maximumPoolSize - corePoolSize。long 类型。

四、unit 空闲线程存活时间单位
时间单位,指空闲线程存活时间单位,与 keepAliveTime 配合使用。单位为 TimeUnit,常用取值有以下 7 个:
在这里插入图片描述

五、workQueue 工作队列
阻塞队列,指线程池存放任务的队列,用来存储线程池的所有待执行的任务。BlockingQueue 类型。取值有以下几种:
在这里插入图片描述
比较常用的是 LinkedBlockingQueue。线程池的排队策略和该参数息息相关。

六、threadFactory 线程工厂
线程工厂。线程池创建线城市调用的工厂方法,通过此方法可以设置线程的优先级、线程的命名规则以及线程的类型(用户线程还是守护线程)等。ThreadFactory 类型。

七、handler 拒绝策略
拒绝策略。当线程池的任务超出线程池队列可以存储的最大值之后,拒绝任务的策略。RejectedExecutionHandler 类型。取值有:
在这里插入图片描述
线程池的默认拒绝策略是 AbortPolicy–拒绝并抛出异常。

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

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

相关文章

【OpenGauss源码学习 —— 列存储(创建表)】

列存储 什么是列存储?语法实现语法格式参数说明示例源码分析(创建表)语法层(Gram.y)子模块(utility.cpp) 总结 声明:本文的部分内容参考了他人的文章。在编写过程中,我们…

设置Windows主机的浏览器为wls2的默认浏览器

1. 准备工作 wsl是可以使用Windows主机上安装的exe程序,出于安全考虑,默认情况下改功能是无法使用。要使用的话,终端需要以管理员权限启动。 我这里以Windows Terminal为例,介绍如何默认使用管理员权限打开终端,具体…

煤矿调度IP语音对讲广播模块一键求助对讲矿用调度通信系统SIP语音对讲求助终端

硬件接口描述 SV-2101VP/ SV-2103VP系列网络音频模块,所有外部连接采用端子,电源采用2.0mm的端子,网络采用标准RJ45连接器,其他都是1.25mm的连接器。 端口类型定义 P ———— 电源 AI ———— 模拟输入(在这里是音…

diffusion model classifier-guided与classifier-free的区别

classifier-guided 训练阶段 diffusion model 和 classifier分开训练。 diffusion model的数据训练数据为 classifier的数据训练数据为 生成图片阶段 每一个时间步的降噪中会用当前时间步图片在classifier的类别梯度来调整均值。(如上图所示) 之前写…

智慧云实训室建设方案

一、智慧云系统概述 智慧云系统是一种基于云计算技术和虚拟化技术的系统,用于实现各种仿真和模拟任务。它可以提供强大的计算能力和资源管理,为用户提供灵活、高效、可扩展的仿真环境。 该系统通常由一组服务器、网络和存储设备组成,这些设备…

Vue轻量级富文本编辑器-Vue-Quill-Editor

效果图&#xff1a; 下载Vue-Quill-Editor npm install vue-quill-editor --save 下载quill&#xff08;Vue-Quill-Editor需要依赖&#xff09; npm install quill --save vue项目中使用代码 <template><div class"edit_container"><quill-edito…

linux系统安装nginx操作步骤

话不多说&#xff0c;直接上教程 一&#xff1a;安装依赖 输入命令&#xff1a;yum install -y gcc-c pcre pcre-devel zlib zlib-devel openssl openssl-devel 二&#xff1a;下载nginx安装包 输入命令&#xff1a;wget http://nginx.org/download/nginx-1.24.0.tar.gz 用…

Flink内核源码解析

Flink内核源码 Flink RPC 网络通信框架Akka 以往&#xff0c;我们接触过非常多的大数据技术栈相关的框架&#xff0c;用的比较多的大数据相关组件&#xff0c;常用的RPC实现技术如下&#xff1a; 技术组件RPC实现HadoopNIO Protobuf (Protobuf即Protocol Buffers&#xff0…

iOS设计规范是什么?都有哪些具体规范

iOS设计规范是苹果为移动设备操作系统iOS制定的设计指南。iOS设计规范的制定保证了苹果应用在外观和操作上的一致性和可用性&#xff0c;从而提高了苹果界面设计的用户体验和应用程序的成功性。本文将从七个方面全面分析iOS设计规范。 1.iOS设计规范完整版分享 由「即时设计」…

VS2019+Qt5.15.2 编译 QtWebEngine(带音视频解码)

前言 QtWebEngine 是 Qt 框架的一部分&#xff0c;用于构建现代 Web 浏览器功能。本篇教程将向您展示如何在 Visual Studio 2019 中编译 QtWebEngine 5.15.2 源码&#xff0c;并配置以支持音视频解码功能。 准备工作 1、源码下载 2、源码修改&#xff0c;参考Qt Code Review…

Docker基础入门:镜像、容器导入导出与私有仓库搭建

Docker基础入门&#xff1a;镜像导入导出与私有仓库搭建 一、 Docker镜像、容器的导入和导出1.1、Docker镜像的导出1.2、Docker镜像的载入1.3、Docker容器的导出1.4、Docker容器的导入 二、 镜像和容器导出和导入的区别:三、commit操作_本地镜像发布到阿里云3.1、commit操作有关…

【正点原子STM32连载】第十二章 串口通信实验 摘自【正点原子】APM32F407最小系统板使用指南

1&#xff09;实验平台&#xff1a;正点原子stm32f103战舰开发板V4 2&#xff09;平台购买地址&#xff1a;https://detail.tmall.com/item.htm?id609294757420 3&#xff09;全套实验源码手册视频下载地址&#xff1a; http://www.openedv.com/thread-340252-1-1.html# 第十…

在 Windows 11 上继续使用 Internet Explorer 的方法

为什么微软要淘汰IE&#xff1f; 微软在几年前积极的想要淘汰IE浏览器且用Edge来取代&#xff0c;像是Windows 11内建就没有IE浏览器&#xff0c;如果需要用到IE就必须得用Edge内的IE模式。IE缺乏现代浏览器的安全性。微软在2002年的时候&#xff0c;IE曾经占据了95%的浏览器市…

韦东山-电子量产工具项目:输入单元

所有代码都已通过测试跑通&#xff0c;其中代码结构如下&#xff1a; 一、include文件夹 1.1 input_manager.h #ifndef _INPUT_MANAGER_H //防止头文件重复包含,只要右边的出现过&#xff0c;就不会再往下编译 #define _INPUT_MANAGER_H #include <sys/time.h>#define I…

springboot艰难版本升级之路!! springboot 2.3.x版本升级到2.7.x版本

文章目录 1.缘起1.1 升级到版本2.7.12启动失败,而且没有报错信息1.2 application-dev.yml 配置加载问题1.3 openfeign依赖问题汇总1.4 datasource报错1.5 MySQL驱动升级1.6 循环依赖报错临时总结1.缘起 由于服务需要搭建链路追踪, 需要把springboot版本升级到2.7.12. 目前服务是…

爬虫借助代理会让网速快点吗?

亲爱的程序员朋友们&#xff0c;你曾经遇到过爬虫网速慢的情况吗&#xff1f;别着急&#xff01;今天我将和你一起探讨一下使用代理是否可以加速爬虫&#xff0c;让我们一起进入这个轻松又专业的知识分享。 一、原因和机制的解析 1.IP限制 某些网站为了保护资源和防止爬虫行…

大模型基础03:Embedding 实战本地知识问答

大模型基础:Embedding 实战本地知识问答 Embedding 概述 知识在计算机内的表示是人工智能的核心问题。从数据库、互联网到大模型时代,知识的储存方式也发生了变化。在数据库中,知识以结构化的数据形式储存在数据库中,需要机器语言(如SQL)才能调用这些信息。互联网时代,…

ZKRF-08、ZKRF-10、ZKBLF-04压力补偿节流阀

ZKFC-08、ZKFC-10单向节流阀、ZKNV2-08、ZKNV2-10节流阀、ZKRF-08、ZKRF-10、ZKBLF-04压力补偿节流阀。 螺纹插装式单向节流阀&#xff0c;节流阀流量大小可通过调节螺杆来实现。②到①节流&#xff0c; ①到②开启。 手动节流阀&#xff0c;节流阀流量大小或关闭可通过调节螺…

系统性能调优之绑定cpu

支持超线程的numa架构 物理硬件视角&#xff0c; 将多个CPU封装在一起&#xff0c;这个封装被称为插槽Socket&#xff1b;Core是socket上独立的硬件单元&#xff1b;通过intel的超线程HT技术进一步提升CPU的处理能力&#xff0c;OS看到的逻辑上的核Processor的数量。 每个硬…

Studio One6最新音乐歌曲编曲伴奏软件

Studio One也是一款受众面积十分广泛的编曲软件&#xff0c;它集混音、编曲、乐曲制作为一体&#xff0c;是一款一站式工作的音乐制作软件。它支持用户添加乐器轨道&#xff0c;在轨道中使用内部乐器进行编辑输入&#xff0c;以实现编曲操作。 和FL Studio类似&#xff0c;Stu…