美文网首页
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