关于ThreadLocal的总结:
1. ThreadLocal的作用就是将线程经常要用到的对象放到属于线程自己的内存空间里,在该线程的执行过程中,可以通过静态的ThreadLocal实例来方便的存取这个对象,而不用再通过参数的形式来回传递。
2. 每个线程都有一个属于自己的ThreadLocalMap(不是ThreadLocal,而是它的一个内部类)实例,通过ThreadLocal的静态实例来方便的操作这个Map来存取某个属于该线程的对象。
3. 每个threadlocal的实例只能做为一个变量的Key存放于线程的ThreadLocalMap中,如果当前线程有多个变量需要储存,则需要为每一个变量定义一个threadlocal的实例。
4. 一个threadlocal实例只是用于在threadlocalmap中存储的变量的key. 换句话说,threadlocal只是一个key. ThreadLocal并不解决多线程的并发访问问题
注:此文章是复制过来,并非本人撰写
1. ThreadLocal的作用就是将线程经常要用到的对象放到属于线程自己的内存空间里,在该线程的执行过程中,可以通过静态的ThreadLocal实例来方便的存取这个对象,而不用再通过参数的形式来回传递。
2. 每个线程都有一个属于自己的ThreadLocalMap(不是ThreadLocal,而是它的一个内部类)实例,通过ThreadLocal的静态实例来方便的操作这个Map来存取某个属于该线程的对象。
3. 每个threadlocal的实例只能做为一个变量的Key存放于线程的ThreadLocalMap中,如果当前线程有多个变量需要储存,则需要为每一个变量定义一个threadlocal的实例。
4. 一个threadlocal实例只是用于在threadlocalmap中存储的变量的key. 换句话说,threadlocal只是一个key. ThreadLocal并不解决多线程的并发访问问题
注:此文章是复制过来,并非本人撰写