ThreadLocal中的Set(null)和remove() 是不是作用一样?

在Java中,remove方法能不能保证使用线程池后不会取到之前的值? 每次在线程结束的时候Remove一下,是不是就能防内存泄露了?

set是把TheadLocalMap的value赋值为null,并没有删掉这个K-V这个元素
而remove则是把K-V这个元素都删掉了,两个不同的东西,不要弄混了