Я знаю, что volatile
допускает видимость, AtomicInteger
допускает атомарность.
Поэтому, если я использую volatile AtomicInteger
, значит ли это, что мне больше не нужно использовать механизмы синхронизации?
Eg.
class A {
private volatile AtomicInteger count;
void someMethod(){
// do something
if(count.get() < 10) {
count.incrementAndGet();
}
}
Является ли это потокобезопасным?