首页 > 其他分享 >线程池工作流程

线程池工作流程

时间:2022-12-08 12:22:13浏览次数:44  
标签:队列 流程 maximumPoolSize 工作 任务 线程 corePoolSize 运行

 

CorePoolSize: 核心线程数。

MaximumPoolSize: 最大线程数。

WorkQueue: 工作队列。

 

流程

  1. 创建线程池后,等待提交过来的任务请求。
  2. 调用execute()方法添加一个请求任务。
    1. 如果正在运行的线程数量小于corePoolSize,那么马上创建线程执行这个任务。
    2. 如果正在运行的线程数量大于或等于corePoolSize,那么把这个任务放入工作队列。
    3. 如果这个时候队列满了,且正在运行的线程数量还小于maximumPoolSize,那么创建非核心线程立即运行这个任务。
    4. 如果队列满了,且正在运行的线程数大于或等于maximumPoolSize,那么启动饱和拒绝策略来执。
  3. 当一个线程完成任务时,它会从队列中取下一个任务来执行。
  4. 当一个线程无事可做超过一定时间(KeepAliveTime)时,线程池会判断:如果当前运行线程数大于corePoolSize,这个线程被停掉。

 

标签:队列,流程,maximumPoolSize,工作,任务,线程,corePoolSize,运行
From: https://www.cnblogs.com/-ori/p/16965714.html

相关文章

  • app提交上架最新流程 ios​
    ​一、上架基本需求资料1、苹果开发者账号(公司已有可以不用申请,需要开通开发者功能,每年99美元)​2、开发好的APP​二、证书上架版本需要使用正式的证书​1、创建证书​​A......
  • iOS AppStore上架流程图文详解​
    1、首先得注册AppleDeveloper的开发者账号,最后如果要上架苹果商店,这个账号是要交年费的,核算下来大概600多元人民币。​2、接下来要登录AppleDeveloper网站,点击“Account”......
  • app提交上架最新流程 ios​
     一、上架基本需求资料1、苹果开发者账号(公司已有可以不用申请,需要开通开发者功能,每年99美元)​2、开发好的APP​二、证书上架版本需要使用正式的证书​1、创建证书......
  • 好玩的文字流程图:flowchart-fun
    ✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。......
  • 5、进程与线程
    进程与线程1、 进程是程序的一次动态执行过程,它经历了从代码加载、执行到执行完毕的一个完整过程,这个过程也是进程本身从产生、发展到消亡的过程2、 线程Thread是进程下......
  • Python3 多线程并发处理的返回值收集
    库函数threading背景去查询python3多线程,可以找到一大堆关于threading库的博客教程,但是多数是几个线程执行同一个函数(他们博客里各个线程传入的函数参数不同),且没有......
  • Java流程控制(6)循环结构 while循环
             ......
  • 手游工作室怎么防封?
    游戏工作室多开是常见的工作方式,游戏多开可能会出现封号的风险,只是要游戏工作室的,他们都有自己防止游戏账号被封的风险,那么游戏防封都有哪些方法呢?一般来说游戏封号都是通过......
  • Java线程中断机制
    在阅读AQS源码以及juc包很多基于AQS的应用源码过程中,会遇到很多interrupted相关的方法,这里复习一下java线程中断相关。要点:使用interrupt()中断一个线程,该方法只是标记中......
  • 钉钉开发之根据流程码获取流程表单schema
    一、环境:1、钉钉oa审批流程中,已有“出差审批”流程,流程码为:PROC-48E207E5-EB8B-457C-BC3D-86CD5E5A50B32、开发环境:IDEA二、代码1、获取tokenpackagesfccl.api;imp......