惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Jina AI
Jina AI
博客园 - Franky
Apple Machine Learning Research
Apple Machine Learning Research
酷 壳 – CoolShell
酷 壳 – CoolShell
阮一峰的网络日志
阮一峰的网络日志
量子位
雷峰网
雷峰网
宝玉的分享
宝玉的分享
V
Visual Studio Blog
博客园_首页
小众软件
小众软件
The Cloudflare Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
大猫的无限游戏
大猫的无限游戏
博客园 - 聂微东
S
SegmentFault 最新的问题
博客园 - 【当耐特】
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 叶小钗
月光博客
月光博客
博客园 - 三生石上(FineUI控件)
人人都是产品经理
人人都是产品经理
WordPress大学
WordPress大学

博客园 - 外科手术医生

AI带来学习的困惑,无法改变大脑学习的方式 一篇最近很火的文章,同时也是一个搬砖少年 国内经济指标关系 mac充当服务器使用 Spring-AI开发之旅 MACD秒解 历史的车轮 添加pdf的目录 spring ai提示词 纳瓦尔宝典-总结内容 小龙虾的skills哪里找? JMeter压测使用 Git仓库ssh不同环境配置 成功没有奇迹,只有积累----Bruce Lee 为什么要⽤ Foundry git命令下,mac环境下载依赖相关报错问题解决方案 数据分析/数据挖掘/机器学习---- 必读书目(转) 简单高效的语言 OSI模型-一图胜千言 dubbo分布式系统 JVM解剖 集合类 concurrent之CAS concurrent之volatile 架构师之路 责任链设计模式 Junit框架分析 线程详解 计划自己的时间
线程池
外科手术医生 · 2021-10-15 · via 博客园 - 外科手术医生

  阻塞队列(blockQueue)

线程池=银行网点

corePoolSize, 线程池常驻核心线程数  今日当值线程
maximumPoolSize, 最大线程数 (加班窗口)
keepAliveTime, 多余的空闲线程的存活时间
unit, 存活单位
workQueue, 阻塞队列 等候区 Executors.defaultThreadFactory(), 线程工厂 工作人员的制服
defaultHandler 拒绝策略

 线程池 maximumPoolSize,启用的时候,是在阻塞队列满了之后,线程数进行扩容,最大线程数也满了之后,会进到拒绝策略中

 线程池创建:

  Executors

  ThreadPoolExecutor

 线程配置:

  CPU密集型:cpu核数+1

  IO密集型:1.cpu核数*2

       2.线程数=cpu可用核心数/(1-阻塞系数)   阻塞系数:0.8-0.9

学到皮 学到骨 学到肉 学到筋 学到魂

死锁编码定位:

  是什么:两个或两个以上的线程在执行过程中,相互争夺资源而造成的一种相互等待的现象

  代码:

 new Thread(new HoldLockThread(lockA, lockB), "AAA").start();
        new Thread(new HoldLockThread(lockB, lockA), "BBB").start();

  解决:

   jps l 命令定位进程号

  jstack xx 找到死锁查看