Non-atomic operation on 'volatile' field
Reports non-atomic operations on volatile fields.
An example of a non-atomic operation is updating the field using the increment operator. As the operation involves read and write, and other modifications may happen in between, data may become corrupted. The operation can be made atomic by surrounding it with a synchronized
block or using one of the classes from the java.util.concurrent.atomic
package.
Example:
private volatile int v = 1;
void foo() {
v = 2 * v;
}
- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
NonAtomicOperationOnVolatileField
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Java, 243.23126 |