社区
Java
帖子详情
ThreadLocalMap的问题
依然老白兔
2015-04-11 11:26:37
不同的线程中ThreadLocalMap是同一个map么,我感觉应该是,但是不确定,所以过来让大家来给个确切的答案。
...全文
221
2
打赏
收藏
ThreadLocalMap的问题
不同的线程中ThreadLocalMap是同一个map么,我感觉应该是,但是不确定,所以过来让大家来给个确切的答案。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
依然老白兔
2015-04-11
打赏
举报
回复
我上面提出的问题好像解决了,一个线程可以声明多个ThreadLocal类型的变量。
依然老白兔
2015-04-11
打赏
举报
回复
总之,ThreadLocal不是用来解决对象共享访问问题的,而主要是提供了保持对象的方法和避免参数传递的方便的对象访问方式。归纳了两点: 1。每个线程中都有一个自己的ThreadLocalMap类对象,可以将线程自己的对象保持到其中,各管各的,线程可以正确的访问到自己的对象。 2。将一个共用的ThreadLocal静态实例作为key,将不同对象的引用保存到不同线程的ThreadLocalMap中,然后在线程执行的各处通过这个静态ThreadLocal实例的get()方法取得自己线程保存的那个对象,避免了将这个对象作为参数传递的麻烦。 上边是在一个帖子中看到的,第二点是说不同的线程可以使用同一个ThreadLocal变量么?而在取map中内容的时候用的是当前ThreadLocal的实例,这样的话不是就不能区分不同线程自己的本地变量了么
ThreadLocal
和
ThreadLocal
Map
以及
ThreadLocal
Map
内存泄漏的
问题
等来处理父子线程之间的值传递。(建议value直接用
map
省的麻烦了)会随着线程的生命周期管理值的存储,在不再使用时,会清理掉不再需要的。对象只能存储一个值。如果需要存储多个不同的值,通常需要多个。是用于为每个线程提供独立的变量副本的类,每个线程访问。是由线程自动维护的,不需要外部手动创建。是线程私有的,不能直接由外部创建和访问。这样可以保证每个线程使用的是自己的值。是一个线程级别的存储结构,存储了。时,都能得到自己专属的值。每个线程会有一个与之关联的。来存储不同线程的数据。对应的每个线程的值。
ThreadLocal
无法解决共享对象和
ThreadLocal
Map
弱引用
问题
ThreadLocal
无法解决共享对象的更新
问题
ThreadLocal
对象建议使用 static修饰。这个变量是针对一个线程内所有操作共享的,所以设置为静态变量,所有此类实例共享 此静态变量 ,也就是说在类第一次被使用时装载,只分配一块存储空间,所有此类的对象(只 要是这个线程内定义的)都可以操控这个变量。 关于
ThreadLocal
Map
<
ThreadLocal
, Object>弱引用
问题
: 当线程没有结束,但是
ThreadLocal
已经被回收,则可能导致线程中存在
ThreadLocal
模拟
ThreadLocal
Map
的内存泄漏
问题
以及一种解决方法
模拟
ThreadLocal
Map
的内存泄漏
问题
以及一种解决方法
java
map
内存泄露_理解
ThreadLocal
Map
内存泄露
问题
这里所说的
ThreadLocal
的内存泄露
问题
,其实都是从
ThreadLocal
Map
中的一段代码说起的,这段代码就是Entry的构造方法:static class Entry extends WeakReference,
ThreadLocal
{/** The value associated with this
ThreadLocal
. */Object value;Entry(ThreadLo...
ThreadLocal
Map
ThreadLocal
Map
背景介绍 背景 从thread到
ThreadLocal
Map
介绍
ThreadLocal
Map
为Thread的成员变量
threadLocal
s的类型
Java
51,408
社区成员
86,097
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章