Встречается на собеседованиях • сегодня

Как инкрементировать счетчик выполненных операций из разных потоков

Для инкрементирования счетчика из разных потоков в Java нужно использовать потокобезопасные классы, такие как AtomicInteger или синхронизированные блоки.

AtomicInteger (рекомендуется):

java
AtomicInteger counter = new AtomicInteger(0);

// В потоке:
counter.incrementAndGet();

text

**Синхронизированный блок:**
```java
int counter = 0;
final Object lock = new Object();

// В потоке:
synchronized(lock) {
    counter++;
}

Важно:

  • AtomicInteger работает быстрее при высокой конкуренции
  • Обычный int без синхронизации приведет к race condition
  • Для сложных операций можно использовать LongAdder (Java 8+), который эффективнее при высокой конкуренции
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы