zoukankan      html  css  js  c++  java
  • 随笔16 ThreadLocal类

    ① ThreadLocal类:

     

    ② ThreadLocal类的作用:

    • ThreadLocal类为每一个线程都维护了自己独有的变量拷贝。每个线程都拥有了自己独立的一个变量。所以ThreadLocal重要作用并不在于多线程间的数据共享,而是数据的独立。Synchronized用于线程间的数据共享,而ThreadLocal则用于线程间的数据隔离
    • 由于每个线程在访问该变量时,读取和修改的,都是自己独有的那一份变量拷贝,不会被其他线程访问,变量被彻底封闭在每个访问的线程中。
    • ThreadLocal中定义了一个哈希表用于为每个线程都提供一个变量的副本:
       1  static class ThreadLocalMap {
       2         static class Entry extends WeakReference<ThreadLocal> {
       3             /** The value associated with this ThreadLocal. */
       4             Object value;
       5             Entry(ThreadLocal k, Object v) {
       6                 super(k);
       7                 value = v;
       8             }
       9         }
      10         /**
      11          * The table, resized as necessary.
      12          * table.length MUST always be a power of two.
      13          */
      14         private Entry[] table;
      15 }
  • 相关阅读:
    礼物
    Hibernate 笔记 HQL查询 条件查询,聚集函数,子查询,导航查询
    Hibernate get 和 load区别
    JS
    JS
    JS
    JS
    JS
    JS
    JS
  • 原文地址:https://www.cnblogs.com/lyr612556/p/7819985.html
Copyright © 2011-2022 走看看