ThreadLocal

来源:互联网 发布:手写笔迹软件下载 编辑:程序博客网 时间:2024/04/28 10:30

ThreadLocal

 

ThreadLocal<T>
initialValue() : T
get() : T
set(T value)
remove()


顾名思义它是local variable(线程局部变量)。它的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可以独立地改变自己的副本,而不会和其它线程的副本冲突。从线程的角度看,就好像每一个线程都完全拥有该变量。
使用场景
To keep state with a thread (user-id, transaction-id, logging-id)
To cache objects which you need frequently
隐式传参
注意:使用ThreadLocal,一般都是声明在静态变量中,如果不断的创建ThreadLocal而且没有调用其remove方法,将会导致内存泄露。

 

原创粉丝点击