【发布时间】:2015-09-04 16:08:25
【问题描述】:
我有 ThreadLocal 实例,它是用重写的 initValue 方法初始化的。我还用@edu.umd.cs.findbugs.annotations.SuppressWarnings("SIC_INNER_SHOULD_BE_STATIC_ANON")注释如下。
@edu.umd.cs.findbugs.annotations.SuppressWarnings("SIC_INNER_SHOULD_BE_STATIC_ANON")
private ThreadLocal<Integer> dbSwitchCount=new ThreadLocal<Integer>() {
@Override
protected Integer initialValue() {
return 0;
}
};
Still Sonar 报告抱怨“性能 - 可以重构为命名的静态内部类”。 我怎样才能确保上述抱怨被忽略或者我可以避免这种抱怨的最佳方法。
【问题讨论】:
-
您使用的是哪个版本的 Java?如果您使用的是 Java 8,我会使用
new ThreadLocal<Integer>().withInitial(() -> 0); -
不幸的是我被困在 Java 6 中
标签: java findbugs thread-local