Какие предупреждения параллелизма я должен ожидать от FindBugs? - PullRequest
4 голосов
/ 12 декабря 2011

У меня есть следующий код:

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.

1 Ответ

1 голос
/ 03 декабря 2012

Пожалуйста, проверьте ниже код, он показывает ошибку

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

            }

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

        }
...