threadlocal

threadlocal的个人理解

ThreadLocal
之前看的一些教程,说了数据结构,说了实现用途,还举例了一些例子(simpledateformort,数据库连接)
但是一直没太理解,为什么new 一个threadLocal就能拿到他独有的资源。
但是现在看了以后,发现,好像是自己错了。
涉及到三个对象,thread,threadlocalmap,threadlocal。
说是说,一个thread持有threadlocalmap,threadlocalmap的key是threadlocal。
那么我们可以理解为,thread是一个旅馆,threadlocalmap是他里面的房间,钥匙是threadlocal。
那么我们newthreadlocal的时候,就是创建了一个钥匙,这个钥匙是开这个线程的这个房间的,你可以放东西。
然后你可以在new 几个threadlocal,就相当于多拿了几个钥匙,多开几个房间。但是你只是这家旅店的客户。
除非你不在这个线程了,不然,你能开房的只能是这个旅店的。
那么就很好理解了,为什么你用完不清楚,会内存泄漏,你钥匙删除了,房间东西可删除不掉。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值