关于value内存泄漏的疑问
来源:4-15 收不回来的value

慕函数2416174
2020-03-25
老师你好,我有个疑问,在threadlocal使用的第一种情况中,线程池的使用在项目中必须要手动关闭吗?如果不需要关闭,线程池中的线程无法停止,那么在多次使用threadlocal时拷贝到当前线程的value变量过多是不是会导致内存泄漏,在这种情况下可以使用threadlocal的remove方法吗?我思考了很久,如果在run方法的最后remove的话,那么线程在每一次执行任务的时候不是又重新去拷贝副本了,这样会不会有效率问题,所以我觉得自己没有找到remove方法的合适时机
写回答
1回答
-
线程池不适合使用ThreadLocal,remove方法的合适时机就是使用完这个ThreadLocal存的这个value的时候,早用完就可以早remove,不一定需要等到run方法的最后。
012020-03-26
相似问题