Threadlocal的应用

1.每个线程都有一个THreadlocalMap类型的成员变量threadlocals,这个map容器的key就是我们的threadlocal,对应的value就是我们要保存的值

2.当执行set方法的时候,先获取当前线程对象,然后获取当前线程对象对应的ThreadlocalMap对象,并把当前线程对象作为key去存值;

3.执行get同理,

Threadlocal应用场景:

  1.跨层传输数据,比如,当web层调用业务层再调用dao层时,传递的参数可以放在Threadlocal里,

  2.线程间数据隔离的效果

  3.可以存储事务信息

  4.数据库连接,Session会话管理等,比如spring中的JDBC.connection就是用Threadlocal来实现的 。

posted @   适时适言  阅读(196)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示