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

Thread , ThreadLocal , ThreadLocalMap , Entry 之间的关系?

  • Thread , ThreadLocal , ThreadLocalMap , Entry 之间的关系?
    • 首先ThradLocal是线程的本地副本,怎么理解这句话呢?
    • 一个Thread都有一个它自己的ThreadLocalMap。
    • ThreadLocalMap不是HashMap的结构,而是一个Entry数组,里面存放了一个一个的Entry。
    • 而Entry中存放的就是key和value这个key就是ThreadLocal
  • ThreadLocal使用步骤:
    • 创建ThreadLocal对象
    • 获取本地线程
    • 从本地线程中获取ThreadLocalMap
    • 从ThreadLocalMap中找到对应的Entry进行set值

  • 实例代码:

  • 主线程

Thread A ——> ThreadLocalMap(其实是Entry数组)

Key                 Value

tl1                   muse

                        bob

tl2                   john 

  • 线程池

Thread A1 ——> ThreadLocalMap(其实是Entry数组)

Key                 Value

tl1                   pool-1-thread1

Thread A2 ——> ThreadLocalMap(其实是Entry数组)

Key                 Value

tl1                   pool-1-thread2

Thread A3 ——> ThreadLocalMap(其实是Entry数组)

Key                 Value

tl1                   pool-1-thread3

Thread A4 ——> ThreadLocalMap(其实是Entry数组)

Key                 Value

tl1                   pool-1-thread4


http://www.mrgr.cn/news/35512.html

相关文章:

  • vue面试题7|[2024-11-14]
  • 连接实验室服务器并创建虚拟环境,从本地上传文件到linux服务器,使用requirement.txt安装环境需要的依赖的方法及下载缓慢的解决方法(Linux)
  • VUE3+Three.js搭建教程
  • [2024最新] java八股文实用版(附带原理)---java集合篇
  • HTTP常见的请求头有哪些?都有什么作用?在 Web 应用中使用这些请求头?
  • 探索Copier:Python项目模板的革命者
  • 宝塔部署vue项目出现的各种问题
  • 【算法】模拟:(leetcode)6.Z 字形变换(medium)
  • 光子架与电子架 -- 主从子架
  • 小程序面板开发教程|开发照明 Matter 面板步骤(一)
  • WebGL阴影与后期处理
  • Taro多端统一开发解决方案
  • 多线程:死锁
  • 从 Oracle 集群到单节点环境(详细记录一次数据迁移过程)之二:生产服务器的备份操作
  • 前端读取PDF和DOCX文件(干货分享)
  • 【C++】Eclipse技巧汇总
  • ATTCK实战系列-Vulnstack靶场内网域渗透(二)
  • [docker][软件]docker快速安装rabbitmq
  • 每日一练:二叉树的层序遍历
  • 并发编程。
  • 【学习复盘】相关资料
  • QT 自定义可拖动缩放的无边框窗口,可用于mainmindow, widget
  • WebGL性能分析与优化
  • 24/9/24 算法笔记 超参数优化算法
  • QT客户端发送HTTP请求此时服务器到底收到了哪些数据?
  • 解决Mac 默认设置 wps不能双面打印的问题