首页 > 编程语言 > 详细

ThreadLocal:一个变量要被某个线程独享

时间:2020-03-04 13:53:57      阅读:147      评论:0      收藏:0      [点我收藏+]

Java语言中,如果一个变量要被多线程访问,可以使用volatile关键字声明它为“易变的”;

如果一个变量要被某个线程独享,Java中就没有类似C++中__declspec(thread)这样的关键字,不过还是可以通过java.lang.ThreadLocal类来实现线程本地存储的功能。每一个线程的Thread对象中都有一个ThreadLocalMap对象,这个对象存储了一组以ThreadLocal.threadLocalHashCode为键,以本地线程变量为值的K-V值对,ThreadLocal对象就是当前线程的ThreadLocalMap的访问入口,每一个ThreadLocal对象都包含了一个独一无二的threadLocalHashCode值,使用这个值就可以在线程K-V值对中找回对应的本地线程变量。

ThreadLocal:一个变量要被某个线程独享

原文:https://www.cnblogs.com/cag2050/p/12408934.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!