美文网首页
volatile && ThreadLocal

volatile && ThreadLocal

作者: Mythqian | 来源:发表于2021-03-12 10:21 被阅读0次

1、volatile 保证可见性,不保证原子性


1.png

2、ThreadLocal:
结构:


2.png
3、引用概念:
(1)强引用:不会回收

(2)软引用:内存不足的时候才开始回收,回收后的对象放入软引用队列
(3)弱引用:垃圾回收线程扫描到就回收,但是垃圾回收线程优先级低,回收稍慢,回收后的对象放入弱引用队列
(4)虚引用:待补充
4、ThreadLocal引发的内存泄露:

(1) 3.png
(2)解决方案:不用的时候remove掉
(3)弱引用不能在value上,因为gc触发就会回收,容易引发空指针异常!
5、ThreadLocal的线程不安全
(1)原因:存放的key对象在所有线程中的都是同一个
(2)例子:key是static的

相关文章

网友评论

      本文标题:volatile && ThreadLocal

      本文链接:https://www.haomeiwen.com/subject/hvtyaktx.html