Java: Threadlocal 和 run() 方法里的 局部变量有什么区别?
Java: Threadlocal 和 run() 方法里的 局部变量有什么区别?
|
leejanfinApr 1, 2017 via iPhone
1
个人感觉 从某种程度上来说 区别不大 只是让代码更加优雅一些
|
|
SoloCompanyApr 1, 2017
2
ThreadLocal 本质上是一个全局变量,只不过保证了对每个不同线程的局部性,当然和真正的局部变量有本质上的不同
ThreadLocal 要解决的问题也是全局变量所解决的问题,无法深层次传递参数的时候的一种解决方案 一般而言,对于代码可读性来说 显式传递参数 > 依赖注入 > ThreadLocal or static |
|
q397064399Apr 1, 2017 via iPhone
3
大项目才能看出来
|
|
miaoeverApr 1, 2017
4
当然不一样。 run() 方法局部变量的生命周期和 Threadlocal 是完全不同的。
|