当前位置: 首页 > news >正文

关于线程池

是什么?
线程池是一种多线程处理形式
作用:
减少每次获取和结束资源的消耗,提高对资源的利用率。

线程池,顾名思义就是事先创建若干个可执行的线程放入一个容器(池)中,需要的时候从池中获取线程,而不用自行创建,使用完之后不需要销毁,而是放回池中,从而减少创建和销毁线程对象的开销。
假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。
线程池的五种状态:
1.RUNNING:线程池被创建之后进入RUNNING状态,这个状态下线程池
2.SHUTDOWN:线程池不接收新的任务,但能处理已添加的任务
3.STOP:不仅不接收新任务,已添加的任务也不会处理,并且正在执行的任务也会中断
4.TIDYING:线程池在所有的任务已经终止,任务数量为0的时候,变成TIDYING,此时会执行terminated()函数
5.TERMINATED:在钩子函数terminated()执行完成之后变成TERMINATED状态
常见线程池
1.newSingleThreadExecutor
单个线程的线程池,就是说线程池中每次只有一个线程在工作,单线程串行执行任务
2.newFixedThreadExecutor(n)
固定数量的线程池,每提交一个任务就是一个线程,直到达到线程池的最大数量,然后后面进入等待队列直到前面的任务完成才继续执行
池化技术的应用:
(提前把资源放好,以供使用)
1.数据库连接池子
2.http连接池
3.redis

http://www.lryc.cn/news/1967.html

相关文章:

  • 【GPLT 二阶题目集】L2-004 这是二叉搜索树吗?
  • Python Numpy基础教程
  • 常见HTTP请求错误码大全
  • 重保期间如何「快速」构建内容安全治理体系?
  • 用Qt开发的ffmpeg流媒体播放器,支持截图、录像,支持音视频播放,支持本地文件播放、网络流播放
  • 第七节 平台设备驱动
  • 代理模式详解
  • 根据报告20%的白领在一年内做过副业,你有做副业吗?
  • 第二十三周周报
  • 2023年Q1业绩增长背后,迪士尼亟待扭转流媒体亏损困局
  • LKWA靶场通关和源码分析
  • logcpp demo
  • 平价款的血糖血压监测工具,用它养成健康生活习惯,dido F50S Pro上手
  • 算法训练营 day42 动态规划 理论基础 斐波那契数 爬楼梯 使用最小花费爬楼梯
  • MySQL8 创建用户,设置修改密码,授权
  • MySQL —— 内置函数
  • Mybatis框架(全部基础知识)
  • pixhawk2.4.8使用调试记录—APM固件
  • 终于进了字节,记录一下我作为一名测试员磕磕碰碰的三个月找工作经历...
  • 基于PYTHON django四川旅游景点推荐系统
  • MySql服务多版本之间的切换
  • 嵌入式开发:通过嵌入式虚
  • 广州穗雅医院杨济安:了解症状表现 有效防治口腔黏膜下纤维化
  • [数据分析] 数据指标体系搭建
  • Dubbo 源码分析 – 集群容错之 Cluster
  • Spring学习20230208-09
  • tomcat10部署报错WebStatFilter cannot be cast to jakarta.servlet.Filter
  • Linux修改文件时间或创建新文件:touch
  • 原生微信小程序按需引入vant
  • 高性能IO模型:为什么单线程Redis能那么快?