当前位置: 首页 > 图灵资讯 > java面试题> 金三银四精选java面试题-ThreadLocal是什么

金三银四精选java面试题-ThreadLocal是什么

来源:图灵教育
时间:2023-12-07 10:18:49
 

ThreadLocal是什么

ThreadLocal,也就是线程本地变量。如果你创建了一个ThreadLocal变量,那么访问这个变量的每个线程都会有这个变量的一个本地拷贝,多个线程操作这个变量的时候,实际是操作自己本地内存里面的变量,从而起到线程隔离的作用,避免了线程安全问题。

ThreadLocal线程副本

  • 创建

创建了一个ThreadLoca变量localVariable,任何一个线程都能并发访问localVariable。

//创建一个ThreadLocal变量
public static ThreadLocal<string> localVariable = new ThreadLocal<>();
  • 写入

线程可以在任何地方使用localVariable,写入变量。

localVariable.set("test”);
  • 读取

线程在任何地方读取的都是它之前写入的变量值,而不会被其他线程的操作影响。

localVariable.get();