美文网首页
ThreadLocal的使用

ThreadLocal的使用

作者: Nzkalhbxx | 来源:发表于2023-05-09 18:55 被阅读0次

    ThreadLocal主要的应用场景有二:

    1:在多线程并发修改访问同一个共享变量时,可能会发生并发修改异常。为了防止多线程下对同一个资源访问产生未知的问题,可以为每个线程创建一个该变量的副本(其实就是为每个线程都单独创建一个实例),每个线程都拥有自己的副本,修改该副本并不影响其他线程的副本数据。然后每个线程可通过ThreadLocal对象的get方法即可直接获取到当前线程对应的副本。

    如下,每个线程都去获取一次工具类的某个ThreadLocal对象,虽然此对象是用static修饰的,但是每个thread通过threadLocal的get方法获取的对象其实都是不一样的。即使修改了某个线程的threadLocal get的对象,其他线程的threadLocal保存的对象并不会改变。

    2:同一线程调用的多个方法中,共享同一个变量。如用户信息,虽然可以通过参数的形式传给调用的方法,但是亦可以考虑使用threadLocal的方式。

    参考文章:
    https://blog.csdn.net/lambert00001/article/details/128025402

    相关文章

      网友评论

          本文标题:ThreadLocal的使用

          本文链接:https://www.haomeiwen.com/subject/loarsdtx.html