remove
1.要注意使用remove, 如果不清理,会有内存泄露问题
2.要注意remove,一个请求线程中的多个层之间,只需要保证最后一层去清除。否则容易误清。
案例:
LogUtil, 添加日志的功能是用切面方式实现的,在切面中向ThreadLocal里存值,然后启动异步线程去存日志。然后对ThreadLocal做了清理。造成的影响是,这个操作后面的操作都无法获取ThreadLocal里的缓存。比如 userId 等用户信息。
remove
1.要注意使用remove, 如果不清理,会有内存泄露问题
2.要注意remove,一个请求线程中的多个层之间,只需要保证最后一层去清除。否则容易误清。
案例:
LogUtil, 添加日志的功能是用切面方式实现的,在切面中向ThreadLocal里存值,然后启动异步线程去存日志。然后对ThreadLocal做了清理。造成的影响是,这个操作后面的操作都无法获取ThreadLocal里的缓存。比如 userId 等用户信息。