ThreadLocal面经求解答

今天面试某大厂的时候,面试官问我,ThrealLocal原理是什么?

我答:是每个Thread里面都有一个ThrealLocalMap,key是ThrealLocal,value是我们存的Object,当我们调用set的时候,就会去当前线程所持有的ThrealLocalMap放入一个k-v对,k是当前的ThrealLocal对象,value是Object,当我们调用get的时候,会去ThrealLocalMap中,找到当前ThrealLocal对象对应的value返回

面试官反问:你确定ThrealLocalMap是每个线程的都持有一个吗?不是所有线程共享的吗?

我答:确定

面试官反问:那线程里的ThrealLocalMap是用static变量修饰的吗?

我答:应该不是

面试官:你可以回去再看一看

听面试官的意思是我答的不对,但刚刚我看源码,我好像就是每个Thread都持有一个ThreadLocalMap,不知道是不是我理解错了,请各位大佬解答一下。

附上源码
前面几张图是get&set方法,最后一张是Thread持有ThreadLocalMap,并没有用static修饰

#牛客解忧铺##如何判断面试是否凉了##我的实习求职记录##投递实习岗位前的准备#
全部评论
我觉得你回答的没有问题
6 回复 分享
发布于 2023-09-05 17:46 陕西
threadLocals是变量,没有加static修饰,而ThreadLocalMap是ThreadLocal的内部类,加了static修饰,是一个静态内部类,其作用主要是依托ThreadLocal类隐藏自己,外部无法随意访问到。
4 回复 分享
发布于 2023-09-16 22:40 广东
嗨,你好啊!看到你在面试中遇到了关于ThreadLocal的问题,我来帮你解答一下。 根据你的描述,你的回答基本是正确的。每个线程确实都有一个ThreadLocalMap,其中key是ThreadLocal对象,value是我们存储的Object。当我们调用set方法时,会将当前ThreadLocal对象和对应的value存入当前线程的ThreadLocalMap中。而调用get方法时,会根据当前ThreadLocal对象在ThreadLocalMap中找到对应的value并返回。 至于面试官的反问,ThreadLocalMap并不是所有线程共享的,而是每个线程都持有一个独立的ThreadLocalMap。这是因为ThreadLocal的设计初衷就是为了在多线程环境下实现线程间的数据隔离。 关于ThreadLocalMap是否使用static修饰,根据你提供的源码,Thread确实持有一个ThreadLocalMap,但并没有使用static修饰。这是因为每个线程都有自己独立的ThreadLocalMap,不需要使用static修饰。 如果你还有其他关于ThreadLocal的问题,或者有其他求职相关的问题,都可以告诉我哦。我会尽力帮助你的!如果你想继续聊天,可以点击我的头像进行私信聊天哦~
1 回复 分享
发布于 2023-09-05 17:16 AI生成
ThreadLocalMap就是成员变量
1 回复 分享
发布于 2023-09-06 03:52 宁夏
之前的版本是所有线程共享一个map
1 回复 分享
发布于 2023-09-10 01:38 广西
m
点赞 回复 分享
发布于 2023-09-05 17:47 北京
threadlocal结构大改过 可能你看的版本和面试官不一样 我也是面试被问蒙了 后来去查才发现
点赞 回复 分享
发布于 2023-09-09 00:09 湖北
我怎么觉得他只是在诈你
点赞 回复 分享
发布于 2023-10-15 00:28 江西
可能你之前确定了每个线程里面有这个threadlocalmap,如果你真的确定,就说明你应该也能确定这个属性他肯定不是static修饰的,但是你后面又说应该不是,有点不确定。前后有点冲突,面试官有点怀疑你的基础吧,纯属个人猜测
点赞 回复 分享
发布于 2024-08-03 11:28 广东

相关推荐

2024-12-29 11:08
湖南工业大学 Java
程序员牛肉:简历没什么大问题了。 而且不要再换项目了。三月份就开暑期实习了,现在都一月份了。实在来不及重新开一下项目了。把一个项目写完或许很快,但是把一个项目搞懂吃透并不简单。所以不要换项目了,把你简历上面的两个项目好好挖一挖吧。 具体 体现在:你能不能流利的说出你的项目的每一个功能点代码实现?你能不能说出在这块除了A技术之外,还有其他技术能够实现嘛?如果有其他技术能够实现,那你这块为什么选择了你当前用的这个技术?
投递牛客等公司10个岗位
点赞 评论 收藏
分享
评论
7
52
分享

创作者周榜

更多
牛客网
牛客企业服务