当前位置: 首页 > 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项目出现的各种问题
  • 【算法】模拟:(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不能双面打印的问题