]> source.dussan.org Git - sonarqube.git/blob
05c550f456f0bafd0d4227dd26a7cf577bbfbf02
[sonarqube.git] /
1 <p> The fields of this class appear to be accessed inconsistently with respect
2   to synchronization.&nbsp; This bug report indicates that the bug pattern detector
3   judged that
4   </p>
5   <ol>
6   <li> The class contains a mix of locked and unlocked accesses,</li>
7   <li> At least one locked access was performed by one of the class's own methods, and</li>
8   <li> The number of unsynchronized field accesses (reads and writes) was no more than
9        one third of all accesses, with writes being weighed twice as high as reads</li>
10   </ol>
11
12   <p> A typical bug matching this bug pattern is forgetting to synchronize
13   one of the methods in a class that is intended to be thread-safe.</p>
14
15   <p> You can select the nodes labeled "Unsynchronized access" to show the
16   code locations where the detector believed that a field was accessed
17   without synchronization.</p>
18
19   <p> Note that there are various sources of inaccuracy in this detector;
20   for example, the detector cannot statically detect all situations in which
21   a lock is held.&nbsp; Also, even when the detector is accurate in
22   distinguishing locked vs. unlocked accesses, the code in question may still
23   be correct.</p>