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

Где используется volatile

Ключевое слово volatile в Java используется для переменных, которые могут изменяться разными потоками. Оно гарантирует видимость изменений переменной для всех потоков и предотвращает кэширование значения в регистрах процессора.

Основные случаи использования:

  1. Флаги завершения работы – например, флаг running в многопоточном приложении.
  2. Простые shared-переменные – когда атомарность операций не требуется (например, счётчик).

Пример:

java
public class Worker implements Runnable {
    private volatile boolean running = true;

    public void stop() {
        running = false;
    }

    @Override
    public void run() {
        while (running) {
            // Рабочая логика
        }
    }
}

⚠️ Ограничения:

  • volatile не заменяет synchronized или атомарные классы (AtomicInteger и др.), если нужны сложные операции (например, инкремент).
  • Не подходит для составных операций (check-then-act, read-modify-write).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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