ThreadLocal
ThreadLocal
两个优点:
当前线程与其他线程互不影响
在当前线程内全局共享
关于内存泄漏
动态的分配内存,由于某种原因而没有释放或者无法释放,导致内存浪费
ThreadLocal中有个ThreadLocalMap,而ThreadLocalMap中有Entry<String, String>,如果他是弱引用,那么他在GC回收时立即回收,这时key会被回收,但是null不会被回收,如果他是强引用,那么key和value都不会被回收,总之就是弱引用和强引用都会发生内存泄漏。
防止内存泄漏,在使用ThreadLocal后,使用remove()方法手动清楚所占空间
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.