concurrency - 我应该从 FindBugs 中得到什么并发警告?

标签 concurrency static-analysis findbugs

我有以下代码:

import net.jcip.annotations.GuardedBy;
import net.jcip.annotations.ThreadSafe;

@ThreadSafe
public class Aoeu {
    @GuardedBy("this")
    private long aoeu;

    public long getAoeu() {
        return aoeu;
    }

    public void setAoeu(long aoeu) {
        this.aoeu = aoeu;
    }
}

从我读到的内容来看,FindBugs 理解 JCiP 注释(实际上,1.3.9 随附了它们)但我没有从上面的代码中得到任何警告。根据,我希望看到:
IS: Field not guarded against concurrent access (IS_FIELD_NOT_GUARDED)

This field is annotated with net.jcip.annotations.GuardedBy, but can be accessed in a way that seems to violate the annotation.

最佳答案

请检查下面的代码它显示了错误

class Test 
        {
            @net.jcip.annotations.GuardedBy("this")
            private int field;
            /**
             * 
             */
            public Test()
            {

            }

            /**
             * 
             */
            public void setField()
            {
                field++;
            }

        }

关于concurrency - 我应该从 FindBugs 中得到什么并发警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8479599/

相关文章:

java - Java : Find Inappropriate Exception Handling 的 Coverity 静态分析

PMD、Findbugs 和 Checkstyle 的 Java 版本

java - 无法找到对此进行冗余空检查的原因,该检查已知为非空

java - Maven clean 命令 : java. util.Collections.UnmodifiableRandomAccessList 到 java.util.ArrayList 类型的属性

scala - IO monad 如何使 Scala 中的并发变得容易?

javascript - 为什么 2 和 4 在 b 之前打印?

java - 在监听器中使用 ParserRuleContext 遍历 token - ANTLR4

java - foreach中ConcurrentHashMap的Set是线程安全的吗?

java - finally 子句中的信号量操作

c# - 在访问变量之前检查锁定的静态分析工具