Когда AtomicInteger предпочтительнее, чем синхронизированный?

Поскольку AtomicIntegerможет быть как минимум на порядок медленнее, чем int, защищенный synchronized, зачем мне вообще использовать AtomicInteger?

Например, если все, что я хочу, это увеличить значение intпотоком -безопасным способом, почему бы всегда не использовать:

synchronized(threadsafeint) {
  threadsafeint++;
}

вместо использования гораздо более медленного AtomicInteger.incrementAndGet()?

17
задан Community 23 May 2017 в 12:34
поделиться