![](/i/l/?n=23&i=blog/2506674/202302/2506674-20230220181532139-557741168.png)
原先我们是在ThreadLocal共享我们的用户的登录信息,但是只能在一个线程内取到,就比如上一节所介绍的那样。
但是我们为了提高效率,使用了线程池
![](/i/l/?n=23&i=blog/2506674/202302/2506674-20230220181643271-1152903599.png)
这就出现了不同线程。因此在通过远程调用时,在其他服务中的ThreadLocal中取不到数据
解决办法如下:
![](/i/l/?n=23&i=blog/2506674/202302/2506674-20230220182430453-788978919.png)
注意这里的RequestContextHolder不是同一个东西
读源码可以发现这里的RequestContextHolder都是根据本线程的TheadLocal创建的