在 Java EE 应用程序中使用弱引用

Use of weak-reference in Java EE application

我有以下代码:

Object obj = new Object();
ThreadLocal<Object> threadLocal = new ThreadLocal<Object>();
WeakReference<Object> weakReference = new WeakReference<Object>(obj);
threadLocal.set(obj);

我的问题是,在 Java EE 应用程序中,当我们使用弱引用时,是否需要显式调用 ThreadLocal.remove() 方法?

如果您不调用 remove,ThreadLocal 将保持对 WeakReference 的引用,但这不会阻止 obj 被垃圾收集。