【发布时间】:2010-10-30 17:49:48
【问题描述】:
我对@987654321@ 的有限理解是它有resource leak issues。我认为可以通过将WeakReferences 与 ThreadLocal 正确使用来解决此问题(尽管我可能误解了这一点。)我只想要一个模式或示例,以正确使用带有 WeakReference 的 ThreadLocal(如果存在)。比如这段代码 sn-p 会在哪里引入 WeakReference?
static class DateTimeFormatter {
private static final ThreadLocal<SimpleDateFormat> DATE_PARSER_THREAD_LOCAL = new ThreadLocal<SimpleDateFormat>() {
protected SimpleDateFormat initialValue() {
return new SimpleDateFormat("yyyy/MM/dd HH:mmz");
}
};
public String format(final Date date) {
return DATE_PARSER_THREAD_LOCAL.get().format(date);
}
public Date parse(final String date) throws ParseException
{
return DATE_PARSER_THREAD_LOCAL.get().parse(date);
}
}
【问题讨论】:
-
您为什么认为它存在资源问题?我问的原因是因为根据我的经验,我没有遇到过问题。
-
请提供一些背景说明您认为存在内存泄漏的原因。
-
已更新。请参阅上面的“资源泄漏问题”链接。
-
我更新了我的答案以解决您的编辑问题。
标签: java thread-local weak-references