天天看点

用ThreadLocal来存储变量的铁子,一定看看用完有没有remove啊!不然吃大亏噻!我用这玩意缓存用户信息,结果A

作者:java官方踩坑员

用ThreadLocal来存储变量的铁子,一定看看用完有没有remove啊!不然吃大亏噻!

我用这玩意缓存用户信息,结果A用户拿到了B用户的信息!因为用的线程池啊,线程可能会复用!大家可以把线程池大小调成1试试!像我图1图2的示例,用用户ID=1的用户请求没啥问题,但接着用ID=2的用户请求,却拿到了userId=1的变量值!看看线程名就知道用的同一个线程啊!所以最后一定要记得remove下,像图3,就没问题了!

想想还跟测试小姐姐死犟,说没问题,啪啪打脸啊[泣不成声][泣不成声][泣不成声]#编程# #程序员# #java#

用ThreadLocal来存储变量的铁子,一定看看用完有没有remove啊!不然吃大亏噻!我用这玩意缓存用户信息,结果A
用ThreadLocal来存储变量的铁子,一定看看用完有没有remove啊!不然吃大亏噻!我用这玩意缓存用户信息,结果A
用ThreadLocal来存储变量的铁子,一定看看用完有没有remove啊!不然吃大亏噻!我用这玩意缓存用户信息,结果A