ThreadLocal和ThreadPoolExecutor如何同时使用
发表于:2025-01-27 作者:千家信息网编辑
千家信息网最后更新 2025年01月27日,这篇文章主要介绍ThreadLocal和ThreadPoolExecutor如何同时使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!ThreadLocal会为每个线程保存一份
千家信息网最后更新 2025年01月27日ThreadLocal和ThreadPoolExecutor如何同时使用
这篇文章主要介绍ThreadLocal和ThreadPoolExecutor如何同时使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
ThreadLocal会为每个线程保存一份成员变量的副本,而ThreadPoolExecutor是一些线程不断执行各种任务(线程复用)。比如,你让具有3个线程的ThreadPoolExecutor执行13个任务,那么有一个线程会执行5个任务,另外两个线程执行4个任务。那么,每个线程执行的这几个(5个或4个)任务,会共享ThreadLocal的数据备份。并不是每个任务有一个数据副本。
来段代码说明
TestNum类中定义sewNum这样一个ThreadLocal量,每个线程访问这个类时,都会有一个seqNum的副本。
定义一个任务,打印ThreadLocal变量值
在一个具有3个线程的线程池中,执行13个任务
输出结果,可以看到每个线程,都有一份ThreadLocal的数据备份。但是这些任务并没有独立的数据副本(同一线程执行的任务,共享同一个副本数据)
这就是文章开头提到的分库BUG产生的原因。程序员产生了每个任务都有一个数据副本的错觉。
以上是"ThreadLocal和ThreadPoolExecutor如何同时使用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
线程
任务
副本
数据
同时
内容
备份
数据备份
篇文章
不断
两个
代码
价值
兴趣
分库
原因
变量
小伙
小伙伴
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器换新网卡不识别
湛江服务器交换机回收
如何架设云服务器
数据库快速建模
手机天气预报无法连接到服务器
福建网络技术服务建议
苏州木风网络技术有限公司
汽车零件数据库
腾讯核心服务器在哪儿
计算机数据库实务题
hbase是数据库吗
服务器cpu改家用
查询华为服务器登录用户名
手机版mt4使用教程寻找服务器
使用工具进行数据库备份
江西常见软件开发收费
郑州esop软件开发
服务器需要多少钱
医疗保险互联网诊疗应用科技
贵州税务数据库
组态王数据库变量
汕头帝都互联网科技
初中读网络安全工程师要多少钱
网络安全产品排名中科新业
网络安全主要体现在四个方面
我的世界服务器特殊村民
虚拟机svn服务器搭建
2021联通网络技术案例
安徽软件开发定制费用
服务器读不到优盘需要设置什么