首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ThreadLocal变量

ThreadLocal变量
EN

Stack Overflow用户
提问于 2020-03-27 17:27:33
回答 1查看 26关注 0票数 0

根据我的理解,ThreadLocal是变量,它的值不会在线程之间共享,而是由许多线程使用。

例如。如果我有一个变量,它的当前值是每个线程处理结果所必需的。我更喜欢将该变量设置为原子的,或者使相应的方法同步。

拥有ThreadLocal是否满足上述条件?

我有很多帖子说ThreadLocal可以用来代替同步。

由于我是一个初学者,一个清晰而简单的解释会对我有所帮助。

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2020-03-27 17:33:17

你问的是什么还不完全清楚。

我在这里可以看到两种情况:

  • 变量的值在多个线程中更改,它应该对所有线程可见-在这种情况下,您应该使用synchronization (ThreadLocal变量不适用于此)。
  • 变量的值是多个线程的初始值,但每个线程都应该有它自己的该值的副本,并单独更改它-这是针对ThreadLocal.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60883221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档